這篇文章主要講解了“javascript中全局變量與局部變量有哪些區(qū)別”,文中的講解內(nèi)容簡單清晰,易于學(xué)習(xí)與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學(xué)習(xí)“javascript中全局變量與局部變量有哪些區(qū)別”吧!
創(chuàng)新互聯(lián)是一家專注于成都做網(wǎng)站、網(wǎng)站建設(shè)與策劃設(shè)計,黃岡網(wǎng)站建設(shè)哪家好?創(chuàng)新互聯(lián)做網(wǎng)站,專注于網(wǎng)站建設(shè)10余年,網(wǎng)設(shè)計領(lǐng)域的專業(yè)建站公司;建站業(yè)務(wù)涵蓋:黃岡等地區(qū)。黃岡做網(wǎng)站價格咨詢:18980820575
區(qū)別:1、全局變量的生命周期取決于窗口的創(chuàng)建和銷毀,而局部變量的生命周期依賴于函數(shù)的調(diào)用周期,從開始調(diào)用到結(jié)束調(diào)用;2、全局變量定義在函數(shù)外,局部變量定義在函數(shù)體內(nèi);3、所在的內(nèi)存不同,全局變量在堆中,而局部變量在棧中。
本教程操作環(huán)境:windows7系統(tǒng)、javascript1.8.5版、Dell G3電腦。
局部變量:函數(shù)內(nèi)部 定義的變量稱為局部變量。
全局變量:函數(shù)外定義的變量就是全局變量。
局部變量和全局變量的區(qū)別:
1:作用域不同
局部變量的作用域是當(dāng)前函數(shù)內(nèi)。
全局的變量的作用域是整個script 標(biāo)簽內(nèi)。包括函數(shù)內(nèi)。
2: 生命周期不同
局部變量的生命周期,依賴于函數(shù)的調(diào)用周期,從開始調(diào)用到結(jié)束調(diào)用。
全局變量的生命周期,取決于窗口的創(chuàng)建和銷毀。
3:定義的位置不同
局部的定義在函數(shù)體內(nèi)。
全局的定義在函數(shù)外。
4:被訪問的優(yōu)先級不同。
如果局部變量和全局變量有重名的,那么在函數(shù)內(nèi)局部變量的被訪問的優(yōu)先級更高??梢酝ㄟ^ window. 去訪問全局的變量,或者是 this。
5:所在的內(nèi)存不同
局部的在棧幀中,棧幀在棧中。
全局的屬于window對象的屬性,window對象在堆內(nèi)存中;所以全局的在堆中。
6:被訪問的速度不同
局部變量的存取的效率高于全局的。
感謝各位的閱讀,以上就是“javascript中全局變量與局部變量有哪些區(qū)別”的內(nèi)容了,經(jīng)過本文的學(xué)習(xí)后,相信大家對javascript中全局變量與局部變量有哪些區(qū)別這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是創(chuàng)新互聯(lián),小編將為大家推送更多相關(guān)知識點的文章,歡迎關(guān)注!