JavaScript 中use strict指令介绍

JavaScript 中use strict指令介绍
JavaScript 中use strict指令介绍
 
"use strict" 是 JavaScript 1.8.5 中的新指令(ECMAScript version 5)。
 
它不算一条语句,而是一段文字表达式,更早版本的 JavaScript 会忽略它。
 
"use strict"; 的作用是指示 JavaScript 代码应该以“严格模式”执行。
 
在严格模式中,您无法,例如,使用未声明的变量。
 
"use strict"; 语法
声明严格模式的语法被设计为兼容更早版本的 JavaScript。
 
编译 JavaScript 程序中的数值文字(比如 4+5)或字符串文字("Bill Gates")不会有负面效果。它只会编译为不存在的变量然后消失。
 
所有 "use strict"; 只会对“理解”其含义的新编译器产生影响。
 
为什么使用严格模式?
严格模式使我们更容易编写“安全的” JavaScript。
 
严格模式把之前可接受的“坏语法”转变为真实的错误。
 
举例来说,在普通的 JavaScript 中,错打变量名会创建新的全局变量。在严格模式中,此举将抛出错误,这样就不可能意外创建全局变量。
 
在普通 JavaScript 中,如果向不可写属性赋值,开发者不会得到任何错误反馈。
 
在严格模式中,向不可写的、只能读取的、不存在的属性赋值,或者向不存在的变量或对象赋值,将抛出错误。
 
严格模式中不允许的事项
在不声明变量的情况下使用变量,是不允许的:
 
"use strict";
x = 3.14;              

推荐阅读