JavaScript中實(shí)現(xiàn)塊作用域的方法
更新時(shí)間:2010年04月01日 17:45:25 作者:
在Javascript中由于沒(méi)有作用域的概念,所以很容易發(fā)生標(biāo)識(shí)符名稱的沖突,尤其是在比較大的項(xiàng)目中,這類情況更容易發(fā)生
例如下面這段代碼
{
var temp = "12";
}
alert(temp); //輸出 12
如果按照通常的編程經(jīng)驗(yàn),那么alert函數(shù)是不可以訪問(wèn)到temp變量的,因?yàn)樗诹硗庖粋€(gè)塊中,但是在JavaScript中,卻沒(méi)有塊作用域的概念,所以這種語(yǔ)法對(duì)JS不起作用,但是我們?cè)趯慗S程序的時(shí)候,尤其是比較大的程序或是程序庫(kù),為了防止命名沖突,又需要一種控制變量作用域的機(jī)制,所以這里介紹一種比較普遍的方式,來(lái)實(shí)現(xiàn)塊作用域的概念,代碼如下:
(function() {
var temp = "123";
})();
alert(temp); //輸出錯(cuò)誤
如上面的代碼,定義了一個(gè)函數(shù)表達(dá)式,然后馬上調(diào)用它,這種形式模仿了塊作用域的概念,保護(hù)了塊內(nèi)的命名空間,這種方式在一些比較大的程序庫(kù)中很好用
(例如JQuery),有效的避免了命名沖突。事實(shí)上JQuery正是使用的這種方式來(lái)實(shí)現(xiàn)塊作用域的。
復(fù)制代碼 代碼如下:
{
var temp = "12";
}
alert(temp); //輸出 12
如果按照通常的編程經(jīng)驗(yàn),那么alert函數(shù)是不可以訪問(wèn)到temp變量的,因?yàn)樗诹硗庖粋€(gè)塊中,但是在JavaScript中,卻沒(méi)有塊作用域的概念,所以這種語(yǔ)法對(duì)JS不起作用,但是我們?cè)趯慗S程序的時(shí)候,尤其是比較大的程序或是程序庫(kù),為了防止命名沖突,又需要一種控制變量作用域的機(jī)制,所以這里介紹一種比較普遍的方式,來(lái)實(shí)現(xiàn)塊作用域的概念,代碼如下:
復(fù)制代碼 代碼如下:
(function() {
var temp = "123";
})();
alert(temp); //輸出錯(cuò)誤
如上面的代碼,定義了一個(gè)函數(shù)表達(dá)式,然后馬上調(diào)用它,這種形式模仿了塊作用域的概念,保護(hù)了塊內(nèi)的命名空間,這種方式在一些比較大的程序庫(kù)中很好用
(例如JQuery),有效的避免了命名沖突。事實(shí)上JQuery正是使用的這種方式來(lái)實(shí)現(xiàn)塊作用域的。
您可能感興趣的文章:
- JavaScript詞法作用域與調(diào)用對(duì)象深入理解
- JavaScript中的作用域鏈和閉包
- javascript作用域容易記錯(cuò)的兩個(gè)地方分析
- 深入理解JavaScript系列(14) 作用域鏈介紹(Scope Chain)
- 淺談javascript中的作用域
- js變量以及其作用域詳解
- js使用函數(shù)綁定技術(shù)改變事件處理程序的作用域
- javascript權(quán)威指南 學(xué)習(xí)筆記之變量作用域分享
- javascript中的作用域scope介紹
- 關(guān)于JavaScript中var聲明變量作用域的推斷
- JavaScript.The.Good.Parts閱讀筆記(二)作用域&閉包&減緩全局空間污染
- Javascript 變量作用域 兩個(gè)可能會(huì)被忽略的小特性
- Javascript學(xué)習(xí)筆記3 作用域
- JavaScript的變量作用域深入理解
- Javascript 作用域使用說(shuō)明
- JavaScript 變量作用域及閉包
- javascript 變量作用域 代碼分析
- javascript變量作用域使用中常見(jiàn)錯(cuò)誤總結(jié)
相關(guān)文章
javascript 樹形導(dǎo)航菜單實(shí)例代碼
本文章來(lái)給大家提供一款適用于網(wǎng)站后臺(tái)的使用的javascript 樹形導(dǎo)航菜單特效代碼,有需要了解的同學(xué)可以參考一下2013-08-08
js實(shí)現(xiàn)帶三角符的手風(fēng)琴效果
本文主要介紹了js實(shí)現(xiàn)帶三角符手風(fēng)琴效果的實(shí)例。具有很好的參考價(jià)值,下面跟著小編一起來(lái)看下吧2017-03-03

