Perché il seguente codice avvisa 2
?Perché il risultato di due definizioni di funzione è unito da una virgola?
var f = (function x(){ return 1; }, function y(){ return 2; })();
alert(f);
Quello che posso vedere è che in qualche modo la funzione y
è sempre eseguito e x
funzione viene ignorata. (Ho fatto in modo che ho messo alert
in entrambe le funzioni, e solo il alert
in y
si chiama, che mi fanno credere che la funzione x
non viene chiamato a tutti)
E se tolgo la funzione y
allora avvisi 1
.
Cosa sta succedendo?
Grazie amico, non so come accettare 2 risposte ci dovrebbe essere una tale opzione. quindi ti inviterò. –
Bene, anche l'altra risposta è buona. Ad essere sinceri, la mia risposta è stata prima di alcuni minuti, si collega alla stessa identica risorsa ma la spiega invece di citarla, e penso che dia una spiegazione migliore al problema, questa è solo la mia opinione. –
Mi dispiace amico, ho accettato altra risposta a causa di solo 1 motivo e che è sul mio schermo posso vedere la risposta accettata è 2 minuti prima del tuo. Quindi non sono sicuro di cosa fare, sono confuso :( –