严格模式

来源:互联网 发布:编程自学怎么开始 编辑:程序博客网 时间:2024/05/17 04:00

严格模式

严格模式的调用

  • 在脚本文件或者单个函数第一行添加: “use strict”;

严格模式的支持

  • IE10+
  • Firefox4+
  • Chrome13+
  • Safari5.1+
  • Opera12+

严格模式的意义

严格模式是ES5中,定义了一种不同的解析与执行模式

  • 消除一些js代码中的不严谨,不合理的地方,减少一些怪异的地方
  • 提高编译效率,增加运行速度
  • 为未来的版本做一些铺垫

严格模式的限制

  • 不允许使用未声明的变量(报错)
  • 不允许删除函数
  • 不允许变量重名
  • 不允许使用八进制
  • 不允许使用转义字符
  • 不允许对只读属性赋值
  • 不允许对一个使用getter方法读取的属性进行赋值
  • 不允许删除一个不允许删除的属性
  • 变量名不能使用”eval”字符串
  • 变量名不能使用”arguments”字符串
  • 禁止with语句
  • 在作用域eval()创建的变量不能被调用(eval被赋值时,也会把当前eval所处的变量作用域也赋值过去)
  • 禁止this关键字指向全局对象,使用构造函数时,忘记加new,this不指向全局,报错

严格模式新增保留关键字(使用报错)

  • implements
  • interface
  • let
  • package
  • private
  • protected
  • public
  • static
  • yield