區別:1、全域變數的生命週期取決於視窗的建立和銷毀,而局部變數的生命週期依賴函數的呼叫週期,從開始呼叫到結束呼叫;2、全域變數定義在函數外,局部變數定義在函數體內;3、所在的記憶體不同,全域變數在堆中,而局部變數在堆疊中。
本教學操作環境:windows7系統、javascript1.8.5版、Dell G3電腦。
局部變數:函數內部 定義的變數稱為局部變數。
全域變數:函數外定義的變數就是全域變數。
局部變數和全域變數的差異:
1:作用域不同
局部變數的作用域是目前函數內。
全域的變數的作用域是整個script 標籤內。包括函數內。
2: 生命週期不同
局部變數的生命週期,依賴函數的呼叫週期,從開始呼叫到結束呼叫。
全域變數的生命週期,取決於視窗的建立和銷毀。
3:定義的位置不同
局部的定義在函數體內。
全域的定義在函數外。
4:被存取的優先權不同。
如果局部變數和全域變數有重名的,那麼在函數內局部變數的被存取的優先權會更高。可以透過 window. 去存取全域的變量,或是 this。
5:所在的記憶體不同
局部的在堆疊幀中,堆疊幀在堆疊中。
全域的屬於window物件的屬性,window物件在堆記憶體中;所以全域的在堆中。
6:被存取的速度不同
局部變數的存取的效率高於全域的。
【相關推薦:javascript學習教學】
#以上是javascript中全域變數與局部變數有何區別的詳細內容。更多資訊請關注PHP中文網其他相關文章!