js中的全局变量和局部变量
生活随笔
收集整理的這篇文章主要介紹了
js中的全局变量和局部变量
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
因為js中只用兩種作用域,也就對應這兩種類型的變量。
1:全局變量 -> ?在全局范圍內都是可以訪問的。
2:局部變量?-> ?只能在當前作用域進行訪問。
在js中有一種特殊的情況,在函數作用域內聲明的變量,沒有用var字,那么該變量是一個全局變量。
再看一個例子:
總結:
1:子集作用域內是可以訪問父級作用域(或上一級)的變量,但是父級作用域是不能訪問到子集作用域內的變量。
2:在訪問某一個變量的時候,先在當前作用域查找是否有該變量,就近原則,如果沒有,往上一級查找(父級),如果還沒有,接著往上查找,直到全局作用域,如果還沒有,返回的就是一個undefined。
3:沒有使用var聲明的變量是全局變量,不推薦使用。
4:變量超出作用域之后就會被銷毀,全局變量在關閉頁面或關閉瀏覽器時才會被銷毀,所以盡量少使用全局變量,會占內存空間的。
----------------------------------------------------------------------
補充:什么時候變量的值會是undefined?
有兩種情況:
1:沒有該變量,也就是沒有定義該變量
2:定義了該變量,但是沒有給該變量賦值。
轉載于:https://blog.51cto.com/11871779/2120006
總結
以上是生活随笔為你收集整理的js中的全局变量和局部变量的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: VisualSVN安装配置与使用
- 下一篇: 进程通信之 Binder 机制浅析