2009-11-11 40 views

risposta

9

JavaScript 1.8 contiene sicuramente molte nuove funzionalità. Attualmente è supportato solo da Firefox 3.x (e altri ambienti di esecuzione JavaScript derivati ​​da Mozilla).

Standards-saggio, ECMAScript 4 ha avuto una strada accidentata ed è ora ufficialmente abbandonata, quindi non v'è stato un nuovo JavaScript standard di dal ECMAScript Edition 3 nel 1999. pagina Wikipedia sul future of ECMAScript aggiunge qualche dettaglio si potrebbe essere interessato.

+0

Chi decide cosa diventerà la prossima versione di Javascript? È Mozilla? Perché non penso che abbiano molto a che fare con questo. –

+1

Tecnicamente, "JavaScript" è l'implementazione di Mozilla di ECMASCript, quindi hanno il controllo completo su di esso. Sospetto che la domanda riguardi davvero la "famiglia" di linguaggi ECMAScript, ad esempio JavaScript, JScript, ecc. –

+1

Sì, Matthew Crumley ha ragione. Brendan Eich, che ha creato JavaScript e "lo possiede" come chiunque altro, ha inventato JavaScript mentre lavorava per Netscape ed è stato uno dei fondatori di Mozilla. Quindi hanno sicuramente qualche voce in capitolo su come si evolve JavaScript. Detto questo, l'intero punto della standardizzazione ECMA è cercare di mantenere sincronizzate le implementazioni dei vari produttori di browser. –

6

ECMAScript 5 è su per un voto in dicembre. Probabilmente sarà ratificato.

ECMAScript 5 è una serie di miglioramenti che Douglas Crockford ha suggerito nel corso degli anni, in combinazione con alcune cose dalla libreria del prototipo, e alcune buone basi metaprogrammazione per la prossima versione dopo ECMAScript 5 (attuale sforzo è il nome in codice armonia ECMAScript)

Inoltre, esiste una modalità chiamata "use strict" che può essere impostata a livello di script o per singole funzioni che rimuovono le vecchie funzionalità di cui si vogliono liberare per rendere più sicuro il linguaggio. Il mandato è che tutti i futuri script dovrebbero essere scritti usando la modalità "strict". Le versioni future di ecmascript saranno costruite in base alla modalità rigorosa e rimuoveranno completamente le vecchie funzionalità del linguaggio.

Oh, ha anche un codificatore/decodificatore JSON integrato basato su json2.js di crockford. Che nativo JSON codificatore/decodificatore è già disponibile in safari 4, firefox 3.5 e IE8

6

Il linguaggio stesso è relativamente stabile. Continuerà a ricevere nuove funzionalità, ma nel complesso, la necessità di introdurre tali cambiamenti con un ampio [sufficiente] supporto, e anche i vari requisiti impliciti per l'utilizzo/piattaforma (ad esempio i requisiti di sicurezza e privacy), continueranno a fare il linguaggio stesso evolve piuttosto che ruotare e lentamente piuttosto che veloce.

I implementazioni della lingua dovrebbe comunque continuare a migliorare molto, in termini di prestazioni per lo più; vedi la sana competizione tra i principali giocatori commerciali o open source se non sei d'accordo.

Al di là del linguaggio corretto e le sue implementazioni, penso che una tendenza più significativa è con utilizzo della lingua.Un concetto che è stato diffuso è quello di "Javascript come nuovo codice assembly". Ciò significa che, proprio come la maggior parte dei programmatori, non considera il codice assembly su base regolare, ma si basa invece su compilatori per convertire da linguaggi di un livello superiore di astrazione, diversi "framework javascript" e librerie, come GWT, dojo, Ext JS o JQuery ecc. Serviranno il ruolo dei compilatori lasciando che il programmatore si concentri sul più alto livello di dettagli.

Anche se da un lato-scrive javascript programmi, queste sono in genere, compresso, offuscato e in generale ottimizzata in una forma che non offre una lettura accogliente (quando un'anima sfortunato ha bisogno per eseguire il debug le cose a quel livello.)