ECMAScript: differenze tra le versioni

Contenuto cancellato Contenuto aggiunto
Conformità: Fix nota duplicata e typo
RolloBot (discussione | contributi)
m Bot: Correzione di uno o più errori comuni; modifiche estetiche
Riga 12:
 
=== Versioni ===
Sono state pubblicate finora 10 edizione dell'ECMA-262. Dal 2015 la pubblicazione avviene con una cadenza annuale, per questo le edizioni hanno nel nome anche il riferimento all'anno di rilascio.
{| class="wikitable"
!Edizione
Riga 124:
{{anchor|decima edizione}}
=== Decima Edizione - ECMAScript 2019 ===
La decima edizione, chiamata ECMAScript 2019 è stata rilasciata nel giugno 2019. Le maggiori novità riguardano i metodi <code>Array.flatMap()</code><ref>[https://2ality.com/2017/04/flatmap.html Functional pattern: flatMap]</ref> e <code>Object.fromEntries()</code><ref>[https://2ality.com/2019/01/object-from-entries.html ES proposal: `Object.fromEntries()`]</ref><ref>[http://www.ecma-international.org/ecma-262/10.0/index.html ECMAScript® 2019 Language Specification]</ref>.
 
== Conformità ==
Nel 2010, [[ECMA International]] iniziò lo sviluppo un test per verificare la conformità allo standard ECMA 262 ECMAScript. Chiamato Test262 viene utilizzato per capire quanto le varie implementazioni di JavascriptJavaScript siano conformi alle specifiche. Il test contiene migliaia di verifiche individuali, una per ogni requisito dei vari standard. Lo sviluppo di Test262 è affidato all'ECMA Technical Committee 39 (TC39).
Google e Microsoft hanno contribuito in modo importante allo sviluppo: entrambe hanno sviluppato migliaia dei test eseguiti dalla suite.
Test262 consiste in {{val|38014}} test. Il dato è aggiornato a Gennaio 2020.<ref name="GitHub 2020">{{Cita web|titolo=tc39/test262 |sito=GitHub |data=24 gennaio 2020 |url=https://github.com/tc39/test262 |accesso=29 gennaio 2020}}</ref>.
Le tabelle sottostanti mostrano la conformità degli engine JavascriptJavaScript nelle applicazioni più diffuse.
=== Browser web ===
{| class="wikitable sortable"
Riga 140:
! ES5<ref name="kangax5">{{Cita web|url=https://kangax.github.io/compat-table/es5|titolo=ECMAScript 5 compatibility table|sito=kangax.github.io|lingua=en|accesso=8 novembre 2018}}</ref>
! ES6<ref name="kangax6">{{Cita web|url=https://kangax.github.io/compat-table/es6|titolo=ECMAScript 6 compatibility table|sito=kangax.github.io|lingua=en|accesso=8 novembre 2018}}</ref>
! 2016+<ref name="kangax2016plus">{{Cita web|url=https://kangax.github.io/compat-table/es2016plus|titolo=ECMAScript 2016+ compatibility table|sito=kangax.github.io|lingua=en|accesso=8 novembre 2018}}</ref><ref name ="punteggio">Punteggio che racchiude tutti i test di conformità dalla ES2016 alla ES2019</ref>
|-
| [[V8 (motore JavaScript)|V8]]
Riga 168:
! ES5<ref name="kangax5"/>
! ES6<ref name="kangax6"/>
! 2016+<ref name="kangax2016plus"/><ref name ="punteggio" />
|-
| [[V8 (motore JavaScript)|V8]]