严格模式
严格模式的调用
- 在脚本文件或者单个函数第一行添加: “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
版权声明:本文为luna_OnTheWay原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。