我已阅读了很多关于Javascript中的闭包的内容 这些括号是什么? 我对mozilla.org读它说闭合应该被定义为Javascript匿名关闭
(function(){...})();
但http://www.adequatelygood.com/JavaScript-Module-Pattern-In-Depth.html,它说的闭合功能是
(function(){...}());
有什么区别或后者是错误的? last()的用途是什么?你会在里面放些参数吗? 我在寻找一个很好的参考。
编辑: 此外,对Mozilla.org
var makeCounter = function() {
var privateCounter = 0;
function changeBy(val) {
privateCounter += val;
}
return {
increment: function() {
changeBy(1);
},
decrement: function() {
changeBy(-1);
},
value: function() {
return privateCounter;
}
}
};
为什么需要这个 '功能' 分号的例子吗?如果需要在声明后立即调用,则应在结尾分号前加上()。但没有。
它不是一个封闭,它是一个匿名函数。 – zerkms
[这些自我执行的匿名函数(又名IIFE)实现之间的区别是什么](http://stackoverflow.com/questions/16026909/what-is-the-difference-between-those-self-executing -anonymous-function-aka-iife) – zerkms
[(...())与(...)()在javascript中的重复](http://stackoverflow.com/questions/8774425/vs-in -javascript-closures) – Quentin