- 相關推薦
javascript中的return和閉包函數
復制代碼 代碼如下:
function makefunc(x) {
return function (){
return x;
}
}
alert(makefunc(0));
其實不是不執行,只是朋友的意思這里alert出來的應該是“0”,而不是function (){return x;}。
不是腳本寫錯了,只是沒搞懂return,從當前函數退出,并從那個函數返回一個值。如果返回的是一個函數,那么返回的也是函數本身。
可以這樣修改上面的代碼,就是alert(makefunc(0)()):
復制代碼 代碼如下:
function makefunc(x) {
return (function (){
return x;
})();
}
alert(makefunc(0)());
如果要返回函數執行的結果那么首先要讓這個函數執行,例如:
復制代碼 代碼如下:
function makefunc(x) {
return (function (){
return x;
})();
}
alert(makefunc(0));
這里有一個匿名函數,
復制代碼 代碼如下:
(function (){
return x;
})();
在第一個括號內是匿名函數,第二個括號用于調用該匿名函數,您可以在第二個括號中傳入所需的參數。例如:
復制代碼 代碼如下:
(function( x , y){
alert( x + y);
})(2 ,3 );
【javascript中的return和閉包函數】相關文章:
javascript的閉包概念怎么理解06-15
Javascript函數的定義和用法分析08-15
JavaScript中push(),join() 函數實例詳解09-05
JavaScript日期時間格式化函數08-29
Javascript中arguments對象的詳解和使用方法08-20
JavaScript中的with關鍵字07-24