在菜鸟教程看的JS没看懂一段代码,求教!
varadd=(function(){varcounter=0;returnfunction(){returncounter+=1;}})();看到闭包的时候看到的,上面...
var add = (function () {
var counter = 0;
return function () {return counter += 1;}
})();
看到闭包的时候看到的,上面的代码简化后就是var add=()();
求解释这两个括号是什么意思? 展开
var counter = 0;
return function () {return counter += 1;}
})();
看到闭包的时候看到的,上面的代码简化后就是var add=()();
求解释这两个括号是什么意思? 展开
3个回答
展开全部
function () {return counter += 1;} -------------这个你懂得
function () {
var counter = 0;
return function () {return counter += 1;}
}--------------------返回一个匿名函数的函数
(function () {
var counter = 0;
return function () {return counter += 1;}
})()------------------------立刻执行这个返回一个匿名函数的函数
-----------------------------------------------------------------
所以 add() = 1
function () {
var counter = 0;
return function () {return counter += 1;}
}--------------------返回一个匿名函数的函数
(function () {
var counter = 0;
return function () {return counter += 1;}
})()------------------------立刻执行这个返回一个匿名函数的函数
-----------------------------------------------------------------
所以 add() = 1
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询