Quellcodebibliothek Statistik Leitseite products/sources/formale Sprachen/C/Apache/docs/manual/mod/   (Apache Software Stiftung Version 2.4.65©)  Datei vom 8.0.2025 mit Größe 12 kB image not shown  

Quelle  non_syntactic.js   Sprache: unbekannt

 
// |reftest| skip-if(!xulRuntime.shell) -- needs evaluate()
// Any copyright is dedicated to the Public Domain.
// http://creativecommons.org/licenses/publicdomain/

// Check references to someVar, both as a variable and on |this|, in
// various evaluation contexts.
var someVar = 1;

// Top level.
assertEq(someVar, 1);
assertEq(this.someVar, 1);

// Inside evaluate.
evaluate("assertEq(someVar, 1);");
evaluate("assertEq(this.someVar, 1);");

// With an object on the scope, no shadowing.
var someObject = { someOtherField: 2 };
var evalOpt = { envChainObject: someObject };
evaluate("assertEq(someVar, 1);", evalOpt);
evaluate("assertEq(this.someVar, undefined);", evalOpt);

// With an object on the scope, shadowing global.
someObject = { someVar: 2 };
evalOpt = { envChainObject: someObject };
var alsoSomeObject = someObject;
evaluate("assertEq(someVar, 2);", evalOpt);
evaluate("assertEq(this.someVar, 2);", evalOpt);
evaluate("assertEq(this, alsoSomeObject);", evalOpt);

// With an object on the scope, inside a function.
evaluate("(function() { assertEq(someVar, 2);})()", evalOpt);
evaluate("(function() { assertEq(this !== alsoSomeObject, true);})()", evalOpt);
evaluate("(function() { assertEq(this.someVar, 1);})()", evalOpt);

// `this` is ShellWindowProxy instead of GlobalObject, and it's allowed.
evaluate("assertEq(someVar, 1);", { envChainObject: this });

reportCompare(truetrue);

Messung V0.5
C=95 H=89 G=91

[ Dauer der Verarbeitung: 0.2 Sekunden  (vorverarbeitet)  ]