Recentemente, estava comparando a versão atual do json2.js com a versão que tinha em meu projeto e notei uma diferença em como a expressão de função foi criada e executada automaticamente .
O código usado para envolver uma função anônima entre parênteses e, em seguida, executá-la,
(function () {
// code here
})();
mas agora ele envolve a função executada automaticamente entre parênteses.
(function () {
// code here
}());
Há um comentário do CMS na resposta aceita da sintaxe da função anônima encapsulada do Explain JavaScript que "ambos: (function(){})();
e (function(){}());
são válidos".
Eu queria saber qual é a diferença? O primeiro ocupa memória, deixando uma função global anônima? Onde o parêntese deve ser localizado?