javascript
JavaScript 变量的作用域和生命周期
代碼有生命嗎?答案是有。它也像我們一樣,擁有自己的生命。變量有局部變量和全局變量,它們的生命長短不一樣。不過它的生命都是從它被聲明的時候開始的,不同的是局部變量
會在函數(shù)運行以后被刪除,也就是死亡,而全局變量只有在頁面關(guān)閉才會結(jié)束。它的生命周期明白了的話,我們就講下變量的作用域,如下
我們在學(xué)C#的時候是不是不能在循環(huán)體里面聲明變量,但是,在js里是可以的。
如圖一樣輸出了結(jié)果
注意:在循環(huán)體里面聲明的變量是全局變量,網(wǎng)頁里的腳本和函數(shù)都可以訪問到全局變量,不注意聲明了重復(fù)的變量的話,很容易相互干擾。如下這樣是不行的
你以為是輸出的是9,但是結(jié)果是10,所以我們要注意細(xì)節(jié),別粗心大意得不償失了。
在函數(shù)內(nèi)部聲明的變量是局部變量,所以只能在函數(shù)內(nèi)部訪問它,在函數(shù)外面就不行了。
如圖
這樣的話只有里面的變量輸出了結(jié)果,而外面的顯示了錯誤,所以要記住了函數(shù)內(nèi)部聲明的變量,外面是用不了的。不同的函數(shù)可以聲明相同的局部變量,因為只有聲明過該變量的函數(shù)才 能識別出該變量,當(dāng)要函數(shù)運行完畢,局部變量就會被刪除。
還有一點值得注意不要向未聲明的變量分配值,如果你把值賦給尚未聲明的變量,該變量將被自動作為window對象的一個屬性,就有可能會覆蓋它原來的屬性。
如圖
看吧,它就會說alert不是一個方法,所以我們盡量不要這樣做。
好了,以上內(nèi)容來自老師上課的講解和我個人的理解,希望能對你有幫助。
總結(jié)
以上是生活随笔為你收集整理的JavaScript 变量的作用域和生命周期的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 2025 款 Mini Converti
- 下一篇: 中国队 2:1 越南队,拿下杭州亚运会《