严格的模式
严格模式是 ECMAScript 5 中添加的一个选项,用于启用一些向后兼容的增强功能。 严格模式代码中的行为更改包括:
- 分配给未定义的变量会引发错误,而不是定义新的全局变量;
- 分配或删除不可写属性(例如
window.undefined
)会引发错误而不是静默执行; - 传统的八进制语法(例如
0777
)不受支持; with
语句不受支持;eval
不能在周围范围内创建变量;- 函数’
.caller
和.arguments
属性不受支持; - 函数的参数列表不能有重复项;
window
不再自动用作this
的值。
注意 : - 默认情况下不启用 严格模式,就好像页面使用的 JavaScript 依赖于非严格模式的功能,然后该代码将中断。因此,它必须由程序员自己打开。