/* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */ /* This Source Code Form is subject to the terms of the Mozilla Public * License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
//----------------------------------------------------------------------------- var BUGNUMBER = 'none'; var summary = 'Test destructuring assignments for differing scopes'; var actual = ''; var expect = '';
printBugNumber(BUGNUMBER);
printStatus (summary);
function f() { var x = 3; if (x > 0) {
let {a:x} = {a:7}; if (x != 7) throw"fail";
} if (x != 3) throw"fail";
}
function g() { // Before JS1.7's destructuring for…in was fixed to match JS1.8's, // the expected values were a == "x" and b == 7. for (var [a,b] in {x:7}) { if (a !== "x" || typeof b !== "undefined") throw"fail";
}
{ // Before JS1.7's destructuring for…in was fixed to match JS1.8's, // the expected values were a == "y" and b == 8. for (let [a,b] in {y:8}) { if (a !== "y" || typeof b !== "undefined") throw"fail";
}
}
if (a !== "x" || typeof b !== "undefined") throw"fail";
}
f();
g();
if (typeof a != "undefined" || typeof b != "undefined" || typeof x != "undefined") throw"fail";
function h() { // Before JS1.7's destructuring for…in was fixed to match JS1.8's, // the expected values were a == "x" and b == 9. for ([a,b] in {z:9}) { if (a !== "z" || typeof b !== "undefined") throw"fail";
}
}
h();
if (a !== "z" || typeof b !== "undefined") throw"fail";
reportCompare(expect, actual, summary);
Messung V0.5
¤ Dauer der Verarbeitung: 0.11 Sekunden
(vorverarbeitet)
¤
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.