Javascript聲明變量的時候,雖然用var關鍵字聲明和不用關鍵字聲明,很多時候運行並沒有問題,但是這兩種方式還是有區別的。可以正常運行的代碼並不代表是合適的代碼。
// num1爲全局變量,num2爲window的一個屬性 var num1 = 1; num2 = 2; // delete num1; 無法刪除 // delete num2; 刪除 function model(){ var num1 = 1; // 本地變量 num2 = 2; // window的屬性 // 匿名函數 (function(){ var num = 1; // 本地變量 num1 = 2; // 繼承作用域(閉包) num3 = 3; // window的屬性 }()) }