testDelArg3Strict.js (719B)
1 "use strict"; 2 3 function assertGood(x) { 4 assertEq(x, "good"); 5 } 6 7 (function() { 8 var a = arguments; 9 return function() { 10 assertGood.apply(null, a); 11 } 12 })("good")(); 13 14 (function() { 15 var a = arguments; 16 return function() { 17 a[0] = "good"; 18 assertGood.apply(null, a); 19 } 20 })("bad")(); 21 22 Object.prototype[0] = "good"; 23 24 (function() { 25 var a = arguments; 26 return function() { 27 delete a[0]; 28 assertGood.apply(null, a); 29 } 30 })("bad")(); 31 32 delete Object.prototype[0]; 33 34 function assertUndefined(x) { 35 assertEq(x, undefined); 36 } 37 38 (function() { 39 var a = arguments; 40 return function() { 41 a[0] = "bad"; 42 assertUndefined.apply(null, a); 43 } 44 })()();