JavaScript —— 區域性變數和全域性變數

weixin_34126215發表於2013-07-20

JS的全域性變數有3種宣告方式:

1、Function 外

var v_myVar;

2、Function 內

v_myVar;

3、window.v_myVar

window.v_myVar

全域性變數的優點:

a、減少變數的個數

b、減少由於實際引數和形式引數的資料傳遞帶來的時間消耗

 

全域性變數的缺點:

a、佔用較多的記憶體單元。

全域性變數儲存在靜態存貯區,程式開始執行時為其分配記憶體,程式結束釋放該記憶體。與區域性變數的動態分配、動態釋放相比,生存期比較長,因此過多的全域性變數會佔用較多的記憶體單元。


b、破壞了函式的封裝效能。

函式象一個黑匣子,一般是通過函式引數和返回值進行輸入輸出,函式內部實現相對獨立。但函式中如果使用了全域性變數,那麼函式體內的語句就可以繞過函式引數和返回值進行存取,這種情況破壞了函式的獨立性,使函式對全域性變數產生依賴。同時,也降低了該函式的可移植性。


c、使程式碼的可讀性降低。

由於多個函式都可能使用全域性變數,函式執行時全域性變數的值可能隨時發生變化,對於程式的查錯和除錯都非常不利。

 

詳細可參考:http://www.cnblogs.com/xianbing/archive/2012/02/27/2369369.html

相關文章