Недавно я сравнивал текущую версию json2.js с версией, которая была в моем проекте, и заметил разницу в том, как выражение функции создавалось и выполнялось самостоятельно.
Код, используемый для заключения анонимной функции в круглые скобки и последующего ее выполнения,
(function () {
// code here
})();
но теперь автоматически выполняемая функция заключена в круглые скобки.
(function () {
// code here
}());
В принятом ответе на синтаксис инкапсулированной анонимной функции Explain JavaScript есть комментарий CMS, который «оба: (function(){})();
и (function(){}());
действительны».
Интересно, в чем разница? Занимает ли первое память, оставляя глобальную анонимную функцию? Где должна быть скобка?