Sono un programmatore JavaScript principiante ammesso e sto cercando di saperne di più. Quindi mi rivolgo a voi gente per chiedere aiuto, con questa semplice domanda :). Il libro di O'Reilly che sto leggendo continua a riferirsi al tempo di compilazione del codice JavaScript. La mia conoscenza della programmazione funzionale (schema e simili) mi dice che il JavaScript è in realtà interpretato dal browser, molto probabilmente richiede due passaggi attraverso il JavaScript.Compilare Javascript o interpretare due passaggi?
Sono errato nella mia valutazione? O è il tempo di compilazione che il libro fa riferimento in realtà solo al primo passaggio dell'interprete, simile a come avrebbe funzionato Perl o Python? Grazie!
La maggior parte delle implementazioni linguistiche dinamiche analizzeranno innanzitutto l'input in una Tree Sintassi astratta: questa è la parte in cui vengono rilevati gli errori di sintassi. Successivamente, l'AST può essere eseguito direttamente ("camminato") oppure può essere convertito in un qualche tipo di bytecode interno e/o JIT'ed. Il "come" da eseguire non è specificato nella specifica ECMAScript e varia notevolmente tra le diverse implementazioni. –