欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

javascript中的return和閉包函數(shù)淺析

 更新時(shí)間:2014年06月06日 11:28:31   作者:  
這篇文章主要介紹了javascript中的return和閉包函數(shù)淺析,至少可以讓你搞懂那么多()是什么意思,需要的朋友可以參考下


高手繞道!這跟閉包本身沒什么大的關(guān)系,也不知道怎么取標(biāo)題,隨便湊了個(gè)數(shù),望見諒!

今天一個(gè)剛學(xué)js的朋友給了我一段代碼問為什么方法不執(zhí)行,代碼如下:

復(fù)制代碼 代碼如下:

function makefunc(x) {
 return function (){
  return x;
 }
}
alert(makefunc(0));

其實(shí)不是不執(zhí)行,只是朋友的意思這里alert出來的應(yīng)該是“0”,而不是function (){return x;}。
不是腳本寫錯(cuò)了,只是沒搞懂return,從當(dāng)前函數(shù)退出,并從那個(gè)函數(shù)返回一個(gè)值。如果返回的是一個(gè)函數(shù),那么返回的也是函數(shù)本身。
可以這樣修改上面的代碼,就是alert(makefunc(0)()):
復(fù)制代碼 代碼如下:

function makefunc(x) {
 return (function (){
  return x;
 })();
}
alert(makefunc(0)());

如果要返回函數(shù)執(zhí)行的結(jié)果那么首先要讓這個(gè)函數(shù)執(zhí)行,例如:

復(fù)制代碼 代碼如下:

function makefunc(x) {
 return (function (){
  return x;
 })();
}
alert(makefunc(0));

這里有一個(gè)匿名函數(shù),
復(fù)制代碼 代碼如下:

(function (){
 return x;
})();

在第一個(gè)括號(hào)內(nèi)是匿名函數(shù),第二個(gè)括號(hào)用于調(diào)用該匿名函數(shù),您可以在第二個(gè)括號(hào)中傳入所需的參數(shù)。例如:
復(fù)制代碼 代碼如下:

(function( x , y){
 alert( x + y);
})(2 ,3 );

相關(guān)文章

最新評(píng)論