Можно создать дубликат:
Location of parenthesis for auto-executing anonymous JavaScript functions?
Is there a difference between (function() {…}()); and (function() {…})();?
Two ways of immediate call to anonymous function (function(d){ }()); and (function(x){ })();Javascript анонимная функция - определение
Есть ли разница между данными 2-мя способами декларирования и вызова анонимной функции?
Вариант 1:
(function(){
console.log('Declare and call anonymous function');
})();
Вариант 2:
(function(){
console.log('Declare and call anonymous function');
}());
Обе функции вызываются, как только это evaluated.But я не мог понять разницу.
Вариант 1 гарантирует, что функция определена и доступна перед ее вызовом. Возможно, это делается для совместимости (браузеры могут вести себя по-разному в ситуациях сложного определения функции). – Brendan
Вариант 3:! Function() {console.log («Объявлять и вызывать анонимную функцию»); }() – GillesC
См. Мой ответ на http://stackoverflow.com/a/3783287/5445, нет * практической * разницы, есть только разница на уровне * грамматики *. – CMS