Avatar ·

JavaScript 中的 "use strict" 是做什么的,为什么需要它?

大家好!我开始学习 JavaScript,注意到在一些代码示例中,文件或函数的开头会写 `'use strict';`。老实说,我不太明白这是为什么,以及它到底有什么作用。 我尝试写了一个没有这个指令的简单脚本,一切都能正常运行。例如,我无意中创建了一个没有 `let`、`const` 或 `var` 的变量: ```javascript function test() { myVar = 10; // 我忘了写 let console.log(myVar); } test(); // 输出 10 ``` 但如果我加上 `'use strict';`: ```javascript 'use strict'; function test() { myVar = 10; // 报错! console.log(myVar); } test(); // ReferenceError: myVar is not defined ``` 现在代码会报错。看起来没有 `'use strict'` 一切更简单,但我听说有经验的开发者强烈推荐使用它。问题在哪里?为什么明明能正常工作,还要给自己添麻烦?它还能修复 JavaScript 中的哪些“陷阱”?以及什么时候应该使用它——所有