|
|
@@ -1,5 +1,5 @@
|
|
|
(function(){"use strict";echo("hasOwnProperty(caller): ", arguments.hasOwnProperty("caller"));})();
|
|
|
-hasOwnProperty(caller): true
|
|
|
+hasOwnProperty(caller): false
|
|
|
|
|
|
var foo = function(){"use strict";};(function(){echo("hasOwnProperty(caller): ", foo.hasOwnProperty("caller"));})();
|
|
|
hasOwnProperty(caller): false
|
|
|
@@ -17,7 +17,6 @@ var foo = function(){"use strict";};(function(){"use strict";echo("hasOwnPropert
|
|
|
hasOwnProperty(arguments): false
|
|
|
|
|
|
(function(){"use strict";arguments.caller;})();
|
|
|
-TypeError: 'arguments', 'callee' and 'caller' are restricted function properties and cannot be accessed in this context
|
|
|
|
|
|
var foo = function(){"use strict";};(function(){foo.caller;})();
|
|
|
TypeError: 'arguments', 'callee' and 'caller' are restricted function properties and cannot be accessed in this context
|
|
|
@@ -35,7 +34,6 @@ var foo = function(){"use strict";};(function(){"use strict";foo.arguments;})();
|
|
|
TypeError: 'arguments', 'callee' and 'caller' are restricted function properties and cannot be accessed in this context
|
|
|
|
|
|
(function(){"use strict";arguments.caller = 0;})();
|
|
|
-TypeError: 'arguments', 'callee' and 'caller' are restricted function properties and cannot be accessed in this context
|
|
|
|
|
|
var foo = function(){"use strict";};(function(){foo.caller = 0;})();
|
|
|
TypeError: 'arguments', 'callee' and 'caller' are restricted function properties and cannot be accessed in this context
|
|
|
@@ -53,7 +51,6 @@ var foo = function(){"use strict";};(function(){"use strict";foo.arguments = 0;}
|
|
|
TypeError: 'arguments', 'callee' and 'caller' are restricted function properties and cannot be accessed in this context
|
|
|
|
|
|
(function(){"use strict";Object.defineProperty(arguments, "caller", {value: 0});})();
|
|
|
-TypeError: Cannot redefine non-configurable property 'caller'
|
|
|
|
|
|
var foo = function(){"use strict";};(function(){Object.defineProperty(foo, "caller", {value: 0});})();
|
|
|
|
|
|
@@ -67,8 +64,7 @@ var foo = function(){"use strict";};(function(){Object.defineProperty(foo, "argu
|
|
|
var foo = function(){"use strict";};(function(){"use strict";Object.defineProperty(foo, "arguments", {value: 0});})();
|
|
|
|
|
|
(function(){"use strict";var descriptor = Object.getOwnPropertyDescriptor(arguments, "caller");if(descriptor.hasOwnProperty("get")) safeCall(descriptor.get);if(descriptor.hasOwnProperty("set")) safeCall(descriptor.set);})();
|
|
|
-TypeError: 'arguments', 'callee' and 'caller' are restricted function properties and cannot be accessed in this context
|
|
|
-TypeError: 'arguments', 'callee' and 'caller' are restricted function properties and cannot be accessed in this context
|
|
|
+TypeError: Unable to get property 'hasOwnProperty' of undefined or null reference
|
|
|
|
|
|
var foo = function(){"use strict";};(function(){var descriptor = Object.getOwnPropertyDescriptor(foo, "caller");if(descriptor.hasOwnProperty("get")) safeCall(descriptor.get);if(descriptor.hasOwnProperty("set")) safeCall(descriptor.set);})();
|
|
|
TypeError: Unable to get property 'hasOwnProperty' of undefined or null reference
|