使用此页面:
<!DOCTYPE html>
<html>
<head>
<script>
"use strict";
var foo = 2;
delete foo;
</script>
</head>
<body></body>
</html>
Firebug 控制台提供:
applying the 'delete' operator to an unqualified name is deprecated
>>> foo
ReferenceError: foo is not defined
foo
但是这样就成功了:
>>> var bar = 2;
undefined
>>> delete bar;
true
即使您注释掉delete foo;
以使脚本不会中断,删除bar
仍然成功,尽管它“是全局对象的属性,因为它是通过变量声明创建的,因此具有DontDelete 属性”:
>>> foo
2
>>> delete foo
false
>>> var bar = 2;
undefined
>>> delete bar
true
是否可以在 FireBug 和/或 Chrome 的控制台中启用“严格模式”?