JavaScript|严格模式
JavaScript的变量函数都可以先使用在声明,这是因为JavaScript会自动将声明语句提升到最顶部,但是如果使用了user strict,就不在允许了:
<script>
"use strict";
b = 3;
</script>
我们看到使用了"use strict"了之后控制台就报错了。
“use strict” 的目的是指定代码在严格条件下执行。消除代码运行的一些不安全之处,保证代码运行的安全。提高编译器效率,加快运行速度。
严格模式限制了:
- 不允许使用未声明的变量或对象
- 不允许删除变量或对象
- 不允许删除函数
- 不允许变量重名
- 不允许使用八进制
- 不允许使用转义字符
- 不允许对只读属性赋值
- 不允许对一个使用getter方法读取的属性进行赋值
- 不允许删除一个不允许删除的内容
- 变量名不能使用eval和arguments字符串
- 在eval()创建的变量不能被调用
- 禁止this关键字指向全局对象
人生没有白走的路,每一步都算数!