简介
在使用严格模式时,你无法使用隐式声明的变量、将值赋给只读属性或将属性添加到不可扩展的对象等。
声明严格模式
例如,在以下示例中,所有代码都处于严格模式,并且函数外部的变量声明会导致出现语法错误“严格模式下未定义变量”。
- "use strict";
- function testFunction(){
- var testvar = 4;
- return testvar;
- }
- // 这里会报错
- testvar = 5;
在以下示例中,仅 testFunction 中的代码处于严格模式。 函数外部的变量声明不会导致语法错误,但函数内部的声明会导致语法错误。
- function testFunction(){
- "use strict";
- // 这里会报错
- testvar = 4;
- return testvar;
- }
- testvar = 5;