"use strict" 是 JavaScript 中启用严格模式的指令,它可以帮助你编写更安全、更优化的代码。
严格模式是 ES5 (ECMAScript 5) 引入的一种限制性更强的 JavaScript 变体,它:
在脚本文件或 <script>
标签的最顶部添加:
"use strict";
// 整个脚本的代码都将以严格模式执行
在函数体顶部添加:
function strictFunction() {
"use strict";
// 这个函数内的代码以严格模式执行
}
"use strict";
x = 10; // ReferenceError: x is not defined
"use strict";
delete Object.prototype; // TypeError
"use strict";
function sum(a, a, c) { // SyntaxError
return a + a + c;
}
"use strict";
with (obj) { // SyntaxError
// ...
}
"use strict";
var num = 0123; // SyntaxError
"use strict";
var obj = {};
Object.defineProperty(obj, "x", { value: 42, writable: false });
obj.x = 9; // TypeError
"use strict";
function f() {
console.log(this); // undefined
}
f();
严格模式是编写现代 JavaScript 代码的推荐方式,它可以帮助你避免许多潜在的错误。