嚴格模式下對變數宣告的影響

admin發表於2017-03-31

在javascript嚴格模式下,變數的宣告必須要用var,否則就會報錯。

在非嚴格模式下,如果不使用var,那麼變數就是全域性性的。

程式碼例項:

[JavaScript] 純文字檢視 複製程式碼
var num=1;
url="softwhy.com";
function func(){
  age=2;
}
func();
console.log(age);

上面的程式碼不適用var宣告變數,那麼相應的變數就是全域性性的。

但是在嚴格模式下這是錯誤的,程式碼如下:

[JavaScript] 純文字檢視 複製程式碼
"use strict";
var num=1;
url="softwhy.com";
function func(){
  age=2;
}
func();
console.log(age);

特別說明:本編輯器無法正確演示嚴格模式下的效果。

上面的程式碼會報錯,截圖如下:

a:3:{s:3:\"pic\";s:43:\"portal/201703/31/131716ny46t68lljkbbelk.jpg\";s:5:\"thumb\";s:0:\"\";s:6:\"remote\";N;}

關於嚴格模式更多內容可以參閱javascript嚴格模式特性簡單介紹一章節。

相關文章