“嚴格模式”是在ES5中引入的。它痛正常模式,或者說寬鬆、懶惰模式相比,嚴格模式在行爲上有很多不同。其中一個不同的興偉是嚴格模式禁止自動或隱式地創建變量。而正常模式在發現未聲明的變量時則會自動聲明但不賦值。
例(正常模式與嚴格模式比較):
function foo(a){
b = a;console.log(a + b);
}
foo(2);
輸出:4
function foo(a){
"use strict"; //嚴格模式
b = a; //b未聲明,報錯
console.log(a + b);
}
foo(2);
報錯