Possibile duplicato:
Cosa significano le parentesi che circondano una dichiarazione oggetto / funzione / classe JavaScript?
Cosa fa (funzione ($) {}) (jQuery); significare?
Sto cercando di capire come funziona Edge in modo da poter usare il mio codice,
Non l'ho mai incontrato prima, ma cosa significa:
(function(symbolName) {
//CODE
})("stage");
risposte:
5 per risposta № 1È una funzione anonima che viene definita e quindi chiamata con l'argomento "stage"
2 per risposta № 2
È simile a fare:
var myfunc = (function (symbolName) {
//CODE
});
myfunc("stage");
O
function myfunc(symbolName) {
//CODE
}
myfunc("stage");
tranne che quando la funzione viene definita in uno di questi modi, verrà "sollevata" nella parte superiore dell'ambito del blocco, ma questo è un altro argomento.
1 per risposta № 3
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, è necessario specificare gli argomenti:
(function(args){alert(args)})("Hello"); /* alert is displayed with the passed arguments */
Ti suggerisco questo lezione.