"use strict"在JavaScript中做什么以及为什么需要它?面向新手的解释
大家好!我才刚开始学习 JavaScript,就遇到一个奇怪的结构:`"use strict";`。我在一些脚本和函数的开头见过它,但不知道它有什么用,是做什么的。
下面是一段没有 `"use strict"` 时能正常运行的代码示例:
```javascript
x = 10; // 我没有通过 var、let 或 const 声明变量
console.log(x); // 输出 10
```
但当我加上 `"use strict"` 后:
```javascript
"use strict";
x = 10; // 错误:x 未定义
console.log(x);
```
为什么第一种情况下代码能运行,而第二种情况下会报错?我听说 `"use strict"` 能让代码“更安全”,但我不明白这种安全性具体体现在哪里。还有一个问题:是不是每次都要用它?它会不会让代码变慢?
请用初学者能理解的方式解释一下:这条指令是什么,它是如何工作的,为什么所有有经验的开发者都推荐使用它?最好能带一些示例,这样更容易理解。