在 JavaScript 中,
'use strict';
是 严格模式(Strict Mode) 的声明。
它不是定义变量或函数,而是告诉 JavaScript 引擎:接下来的代码要按照严格模式执行。
作用:
-
消除一些不合理、不严谨的用法
比如:x = 10; // 非严格模式下会默认创建全局变量在严格模式下会直接报错:
ReferenceError: x is not defined -
禁止一些语法
- 不能用
with语句 - 不能给只读属性赋值
- 不能删除变量(
delete x;会报错)
- 不能用
-
提高安全性
函数里的this在严格模式下,如果没有指定调用对象,则是undefined,而不是window。 -
为未来的 JavaScript 标准做准备
一些保留关键字(如public、private、implements)在严格模式中不能作为变量名。
使用位置
-
写在脚本或函数最顶部:
- 在脚本开头 → 整个文件严格模式
- 在函数开头 → 仅该函数严格模式
示例:
'use strict';
function test() {
x = 5; // ❌ ReferenceError
}