javascript中的return和閉包函數(shù)淺析
更新時間:2014年06月06日 11:28:31 作者:
這篇文章主要介紹了javascript中的return和閉包函數(shù)淺析,至少可以讓你搞懂那么多()是什么意思,需要的朋友可以參考下
高手繞道!這跟閉包本身沒什么大的關系,也不知道怎么取標題,隨便湊了個數(shù),望見諒!
今天一個剛學js的朋友給了我一段代碼問為什么方法不執(zhí)行,代碼如下:
復制代碼 代碼如下:
function makefunc(x) {
return function (){
return x;
}
}
alert(makefunc(0));
其實不是不執(zhí)行,只是朋友的意思這里alert出來的應該是“0”,而不是function (){return x;}。
不是腳本寫錯了,只是沒搞懂return,從當前函數(shù)退出,并從那個函數(shù)返回一個值。如果返回的是一個函數(shù),那么返回的也是函數(shù)本身。
可以這樣修改上面的代碼,就是alert(makefunc(0)()):
復制代碼 代碼如下:
function makefunc(x) {
return (function (){
return x;
})();
}
alert(makefunc(0)());
如果要返回函數(shù)執(zhí)行的結果那么首先要讓這個函數(shù)執(zhí)行,例如:
復制代碼 代碼如下:
function makefunc(x) {
return (function (){
return x;
})();
}
alert(makefunc(0));
這里有一個匿名函數(shù),
復制代碼 代碼如下:
(function (){
return x;
})();
在第一個括號內(nèi)是匿名函數(shù),第二個括號用于調(diào)用該匿名函數(shù),您可以在第二個括號中傳入所需的參數(shù)。例如:
復制代碼 代碼如下:
(function( x , y){
alert( x + y);
})(2 ,3 );
相關文章
腳本之家貼圖轉(zhuǎn)換+轉(zhuǎn)貼工具用到的js代碼超級推薦
[紅色]腳本之家貼圖轉(zhuǎn)換+轉(zhuǎn)貼工具用到的js代碼超級推薦...2007-04-04