ECMAScript 2016

Le convenzioni di nomi JavaScript iniziano con ES1, ES2, ES3, ES5 e ES6.

Ma ECMAScript 2016 e 2017 non sono chiamati ES7 e ES8.

Dal 2016 in poi, le nuove versioni sono denominate per anno (ECMAScript 2016/2017/2018).

Nuove caratteristiche di ECMAScript 2016

Questo capitolo introduce le nuove caratteristiche di ECMAScript 2016:

  • JavaScript potenza (**)
  • JavaScript assegnazione esponenziale (**=)
  • JavaScript Array.prototype.includes

Operatore di potenza

Operatore esponenziale (**) Eleva il primo operando all'esponente del secondo operando.

Esempio

let x = 5;
let z = x ** 2;          // Il risultato è: 25

Prova tu stesso

x ** y Genera lo stesso risultato di Math.pow(x, y) Risultato identico:

Esempio

let x = 5;
let z = Math.pow(x, 2);   // Il risultato è: 25

Prova tu stesso

Assegnazione esponenziale

Operatore di assegnazione esponenziale (**=) Eleva il valore della variabile all'esponente del secondo operando.

Esempio

let x = 5;
x **= 2; // Il risultato è 25

Prova tu stesso

Chrome 52 e Edge 14 sono i primi browser a supportare completamente l'operatore esponenziale:

Chrome IE Firefox Safari Opera
Chrome 52 Edge 14 Firefox 52 Safari 10.1 Opera 39
Luglio 2016 Agosto 2016 Marzo 2017 Marzo 2017 Agosto 2016

JavaScript Array.includes()

ECMAScript 2016 introdurrà Array.prototype.includes Includere l'array. Questo ci permette di verificare se un elemento esiste nell'array:

Esempio

const fruits = ["Banana", "Orange", "Apple", "Mango"];
fruits.includes("Mango"); // true

Prova tu stesso

Tutti i browser moderni supportano Array.prototype.includes:

Chrome IE Firefox Safari Opera
Chrome 47 Edge 14 Firefox 43 Safari 9 Opera 34
Ottobre 2015 Agosto 2016 Ottobre 2015 Dicembre 2015 Ottobre 2015