严格的模式

严格模式是 ECMAScript 5 中添加的一个选项,用于启用一些向后兼容的增强功能。 严格模式代码中的行为更改包括:

  • 分配给未定义的变量会引发错误,而不是定义新的全局变量;
  • 分配或删除不可写属性(例如 window.undefined)会引发错误而不是静默执行;
  • 传统的八进制语法(例如 0777)不受支持;
  • with 语句不受支持;
  • eval 不能在周围范围内创建变量;
  • 函数’.caller.arguments 属性不受支持;
  • 函数的参数列表不能有重复项;
  • window 不再自动用作 this 的值。

注意 : - 默认情况下不启用 严格模式,就好像页面使用的 JavaScript 依赖于非严格模式的功能,然后该代码将中断。因此,它必须由程序员自己打开。