(function(symbolName) { - Cosa significa [duplicato]
-
12-12-2019 - |
Domanda
Possibile duplicato:
Cosa significano le parentesi che racchiudono una dichiarazione di oggetto/funzione/classe JavaScript?
Cosa significa (function($) {})(jQuery);Significare?
Sto cercando di capire come funziona Edge in modo da poter utilizzare il mio codice,
Non mi sono mai imbattuto in una cosa del genere prima, ma cosa significa:
(function(symbolName) {
//CODE
})("stage");
Soluzione
È una funzione anonima che viene definita e poi chiamata con l'argomento "stage"
Altri suggerimenti
È simile a fare:
var myfunc = (function (symbolName) {
//CODE
});
myfunc("stage");
O
function myfunc(symbolName) {
//CODE
}
myfunc("stage");
tranne che quando la funzione è definita in uno di questi modi verrà "sollevata" in cima all'ambito del blocco, ma questo è un argomento completamente diverso.
In Javascript puoi definire funzioni anonime semplicemente digitando:
(function(){alert("Hello")}); /* ok, this do nothing, but it is correct */
È anche possibile chiamare direttamente una funzione:
(function(){alert("Hello")})(); /* alert is displayed */
Se la funzione ha argomenti, devi specificare gli argomenti:
(function(args){alert(args)})("Hello"); /* alert is displayed with the passed arguments */
Ti suggerisco questo tutorial.