我已閱讀了很多關於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