一区二区久久-一区二区三区www-一区二区三区久久-一区二区三区久久精品-麻豆国产一区二区在线观看-麻豆国产视频

javascript,jquery閉包概念分析

Javascript我是經(jīng)常要用,所以是要懂這里面的概念。
其實Javascript里的閉包概念很簡單,就是函數(shù)用到外部變量,不需要傳參就可以獲取。
舉個例子:
復(fù)制代碼 代碼如下:
<script>
var sMessage = "Hello world";
function sayHello(){
alert(sMessage);
}
sayHello();
addNumber(1,2);

var iBaseNum = 10;
function addNumber(iNum1, iNum2) {
function doAddition() {
alert(iNum1 + iNum2 + iBaseNum);
}
return doAddition();
}
function a(){
var i=0;
function b(){
alert(++i);
}
return b;
}
var c = a();
c();
c();

</script>

第一個函數(shù)sayHello沒有傳參數(shù),直接利用了sMessage變量,這個就叫做閉包。
第二個函數(shù)復(fù)雜點,里面有個doAddition也是閉包函數(shù),他不需要參數(shù),直接在執(zhí)行環(huán)境中獲取iNum1,iNum2,還有外部變量 iBaseNum。
第三個函數(shù) 是能保護 i變量的訪問,并且一直保存i在內(nèi)存中,可以一直增加。(閉包的一個經(jīng)典用法)
jquery中閉包也差不多,先給個例子

你也許會問
復(fù)制代碼 代碼如下:
(function($){
$("div p").click(function(){alert("cssrain!")});
})(jQuery); //一個閉包

這是什么寫法啊?
別急,我也是請教了upc ,才稍微懂了點。
這里面的$只是形參,但jquery是全局變量,所以不需要調(diào)用該函數(shù)就會自動執(zhí)行,或者分兩步
就是轉(zhuǎn)化成正常的函數(shù),先寫函數(shù),后調(diào)用。
如下所示
其實:
復(fù)制代碼 代碼如下:
(function($){
$("div p").click(。。。);
})(jQuery);

就是等于
復(fù)制代碼 代碼如下:
function tempFunction($){ //創(chuàng)建一個以$為形參的函數(shù)
$("div p").click(....);
}
TempFunction(jQuery); //傳入實參jQuery執(zhí)行函數(shù).

干脆直接這么寫 ,算了

復(fù)制代碼 代碼如下:
(function(cssrain){
cssrain("div p").click(.... );
})(jQuery); //一個閉包


閉包的基本寫法:
(function(){do someting})();
//這個你就理解為定義一個匿名函數(shù)并立即執(zhí)行
帶參數(shù)的話就這樣:
(function(形參){do someting})(實參);
另外
(function(){var upc="i am upc"})();
alert(upc);
會提示undefined。
因為閉包后,里面的變量就相當(dāng)于局部了。
閉包的好處:
不增加額外的全局變量,
執(zhí)行過程中所有變量都是在匿名函數(shù)內(nèi)部。
上面的例子不是很好,跟Javascript的閉包有點混淆,但這確實也是jquery中的一種閉包。只不過經(jīng)過jquery的加工罷了。
如過有什么不對,大家互相討論,我也是初學(xué)者,還有很多不懂得地方。

JavaScript技術(shù)javascript,jquery閉包概念分析,轉(zhuǎn)載需保留來源!

鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請第一時間聯(lián)系我們修改或刪除,多謝。

主站蜘蛛池模板: 看大片全色黄大色黄 | 欧美高清在线视频 | 亚洲乱码在线播放 | 色美女影院 | 免费国产怡红院在线观看 | 亚洲图片小说综合 | 狠狠做久久深爱婷婷97动漫 | 四虎4hu永久免费 | 综合久久一区二区三区 | 99精品久久99久久久久久 | 国产成人涩涩涩视频在线观看 | 另类亚洲图片 | 五月亚洲| 精品在线免费观看视频 | 77788色淫网站免费观看 | 国产成人精品久久亚洲高清不卡 | 在线观看精品视频一区二区三区 | 四虎永久在线精品免费观看地址 | 激情网站视频 | 亚洲国产精品免费在线观看 | 国产成人悠悠影院 | 激情五月婷婷小说 | 久草热在线 | 人人干人人爽 | 6699久久国产精品免费 | 92看片淫黄大片看国产片 | 欧洲视频一区 | 一二三区在线观看 | 六月婷婷激情 | 中文字幕日本一本二本三区 | 2021国内精品久久久久久影院 | 野战露脸在线视频国产 | 亚洲国产91 | 亚洲成人一区二区 | 国语自产免费精品视频在 | 亚洲综合激情另类小说区 | 在线免费视频国产 | 美女视频很黄很a免费国产 美女视频黄.免费网址 | 中文字幕久久综合伊人 | 视频一区二区在线观看 | 91在线精品老司机免费播放 |