Come funziona un browser analizzando JavaScript che carica da file o in linea? Sto cercando di capire come funziona un browser. Che cosa succede quando una pagina viene caricata e contiene riferimenti <script>
a file esterni e JavaScript effettivo nella pagina. Qualche buon articolo là fuori?In che modo i browser analizzano e interpretano il codice JavaScript?
risposta
Questo è definito nello standard ECMAScript.
In primo luogo il testo di partenza (la roba tra le <script>
tag) viene convertito in una serie di gettoni (secondo il lessicale Grammatica della lingua):
Il testo di partenza di un programma di ECMAScript è prima convertito in una sequenza di elementi di input, che sono token, terminatori di riga, commenti o spazio bianco. Il testo sorgente viene scansionato da sinistra a a destra, ripetendo più volte la sequenza di caratteri più lunga possibile come elemento di input successivo.
leggere qui: http://es5.github.com/#x7
Quella serie di token è trattata come un programma, che viene poi valutata in base alla sintattica Grammatica della lingua che è definito nei capitoli da 11 a 14 dello standard ECMAScript .
La grammatica sintattica ECMAScript è data in clausole 11, 12, 13 e 14. Questa grammatica è ECMAScript token definiti dal lessicale grammaticale suoi simboli terminali (5.1.2). Definisce un insieme di produzioni , a partire dal programma del simbolo obiettivo, che descrive come le sequenze di token possono formare programmi ECMAScript sintatticamente corretti.
leggere qui: http://es5.github.com/#x5.1.4
Si inizia al capitolo 14: http://es5.github.com/#x14
Si noti che ogni elemento <script>
rappresenta un programma JavaScript separata.
Leggi qui: How many JavaScript programs are executed for a single web-page in the browser?
Questa è probabilmente la migliore descrizione di ciò che un browser secondo lo standard ECMAScript Javascript Closures: Identifier Resolution, Execution Contexts and scope chains
- 1. In che modo i browser gestiscono JavaScript?
- 2. In che modo Meteora aggiorna il browser?
- 3. In che modo i browser memorizzano i dati per il completamento automatico e dove?
- 4. Come le macchine interpretano il binario?
- 5. E 'possibile aggiungere un codice browser in javascript
- 6. I crawler di Google interpretano Javascript? Cosa succede se carico una pagina tramite AJAX?
- 7. Modo corretto per i collegamenti per eseguire il codice javascript
- 8. in che modo il selenio web driver carica i file sul browser?
- 9. AJAX/Jquery XML analizzano
- 10. In che modo i browser desktop gestiscono meta tag mobili?
- 11. Copia negli appunti per tutti i browser che utilizzano javascript
- 12. Come posso testare potenzialmente JavaScript "che blocca il browser"?
- 13. È questo codice javascript dipendente dal browser?
- 14. In che modo Overflow dello stack include i file Javascript?
- 15. Come si analizzano rientri e deduzioni con il pyparsing?
- 16. I nuovi browser ottimizzano i loop in modo diverso?
- 17. In che modo il browser Chrome decide quando inviare OPZIONI?
- 18. Include JavaScript in modo dinamico e aspetta
- 19. Modulo comune in node.js e browser javascript
- 20. Come si analizzano i parametri di una query URL, in Javascript?
- 21. In che modo e quando i browser mobili inizieranno a pubblicare contenuti AMP (Accelerated Mobile Pages)?
- 22. In che modo JavaScript associa eventi WinRT?
- 23. In che modo i browser moderni implementano JS Array, in particolare aggiungendo elementi?
- 24. In che modo i browser gestiscono il caching dei pacchetti XAP?
- 25. In che modo i browser determinano quali colori esatti utilizzare per il bordo: inserto o inizio?
- 26. In che modo JavaScript [] funziona davvero?
- 27. Cercare una libreria di markdown javascript che possa analizzare i blocchi di codice all'interno di `` `e` ``
- 28. il modo migliore per rilevare il browser in js
- 29. Esiste un modo cross-browser per impostare style.float in Javascript?
- 30. Scansione Javascript per compatibilità con il browser
Browser diversi utilizzare diversi motori di java script, come il V8, o scimmia ragno. – Incognito
Immagino che seguano alcuni standard. Ci sono alcune somiglianze. –
Il codice JavaScript è interpretato, non analizzato. –