J'ai récemment comparé la version actuelle de json2.js avec la version que j'avais dans mon projet et j'ai remarqué une différence dans la façon dont l'expression de fonction était créée et auto-exécutée.
Le code utilisé pour mettre une fonction anonyme entre parenthèses puis l'exécuter,
(function () {
// code here
})();
mais maintenant, il enveloppe la fonction exécutée automatiquement entre parenthèses.
(function () {
// code here
}());
Il y a un commentaire du CMS dans la réponse acceptée de la syntaxe de la fonction anonyme encapsulée de JavaScript expliquant que «les deux: (function(){})();
et (function(){}());
sont valides».
Je me demandais quelle est la différence? Le premier prend-il mémoire en laissant autour d'une fonction globale et anonyme? Où doit être située la parenthèse?