tor-browser

The Tor Browser
git clone https://git.dasho.dev/tor-browser.git
Log | Files | Refs | README | LICENSE

getter-adding-key.js (979B)


      1 // Copyright (C) 2015 Jordan Harband. All rights reserved.
      2 // This code is governed by the BSD license found in the LICENSE file.
      3 
      4 /*---
      5 esid: sec-object.entries
      6 description: Object.entries does not see a new element added by a getter that is hit during iteration
      7 author: Jordan Harband
      8 ---*/
      9 
     10 var bAddsC = {
     11  a: 'A',
     12  get b() {
     13    this.c = 'C';
     14    return 'B';
     15  }
     16 };
     17 
     18 var result = Object.entries(bAddsC);
     19 
     20 assert.sameValue(Array.isArray(result), true, 'result is an array');
     21 assert.sameValue(result.length, 2, 'result has 2 items');
     22 
     23 assert.sameValue(Array.isArray(result[0]), true, 'first entry is an array');
     24 assert.sameValue(Array.isArray(result[1]), true, 'second entry is an array');
     25 
     26 assert.sameValue(result[0][0], 'a', 'first entry has key "a"');
     27 assert.sameValue(result[0][1], 'A', 'first entry has value "A"');
     28 assert.sameValue(result[1][0], 'b', 'second entry has key "b"');
     29 assert.sameValue(result[1][1], 'B', 'second entry has value "B"');
     30 
     31 reportCompare(0, 0);