Object-defineProperty-03.js (675B)
1 // defineProperty can set array elements 2 3 var g = newGlobal({newCompartment: true}); 4 g.a = g.Array(0, 1, 2); 5 var dbg = new Debugger; 6 var gw = dbg.addDebuggee(g); 7 var aw = gw.getOwnPropertyDescriptor("a").value; 8 9 aw.defineProperty(0, {value: 'ok0'}); // by number 10 assertEq(g.a[0], 'ok0'); 11 var desc = g.Object.getOwnPropertyDescriptor(g.a, "0"); 12 assertEq(desc.configurable, true); 13 assertEq(desc.enumerable, true); 14 assertEq(desc.writable, true); 15 16 aw.defineProperty("1", {value: 'ok1'}); // by string 17 assertEq(g.a[1], 'ok1'); 18 desc = g.Object.getOwnPropertyDescriptor(g.a, "1"); 19 assertEq(desc.configurable, true); 20 assertEq(desc.enumerable, true); 21 assertEq(desc.writable, true);