Ciao Sono nuovo di Javascript, e sto leggendo il Javascript di Oreilly la guida definitiva. Nella sezione istruzione di dichiarazione che dice:La dichiarazione della funzione non deve apparire all'interno dell'istruzione condizionale?
Ho fatto un semplice test:
var a = 1;
while(a < 5){
a++;
function double(a){return a * 2 };
console.log(double(a));
}
Sembra che i node.js non mi dà alcun errore ed eseguire come si aspettano. Qualche commento su questo?
Eseguilo in modalità rigorosa e otterrai il tuo errore. È una sintassi non valida * (eccetto se l'implementazione di JS di Mozilla in cui è consentita una sintassi simile) *, ma è stata storicamente autorizzata dalle implementazioni. –