-1:000000000000 | 0:7994538ed1e9 |
---|---|
1 // Array.of does not trigger prototype setters. | |
2 // (It defines elements rather than assigning to them.) | |
3 | |
4 var status = "pass"; | |
5 Object.defineProperty(Array.prototype, "0", {set: v => status = "FAIL 1"}); | |
6 assertEq(Array.of(1)[0], 1); | |
7 assertEq(status, "pass"); | |
8 | |
9 function Bag() {} | |
10 Bag.of = Array.of; | |
11 Object.defineProperty(Bag.prototype, "0", {set: v => status = "FAIL 2"}); | |
12 assertEq(Bag.of(1)[0], 1); | |
13 assertEq(status, "pass"); |