par Sanket Meghani
Depuis la sortie d’ECMAScript 2015 (également connu sous le nom d’ES6), il a introduit un énorme ensemble de nouvelles fonctionnalités. Ils incluent des fonctions de flèche, des ensembles, des cartes, des classes et des déstructurations, et bien plus encore. À bien des égards, ES2015 est presque comme apprendre une nouvelle version de JavaScript.
Le Comité technique Ecma 39 régit la spécification ECMA. Ils ont décidé de publier une nouvelle version d’ECMAScript chaque année à partir de 2015. Une mise à jour annuelle signifie plus de grosses versions comme ES6.
ECMAScript 2016 n’a introduit que deux nouvelles fonctionnalités:
- Tableau.prototype.inclut ()
- Opérateur d’exponentiation
Tableau.prototype.comprend()
Array.prototype.includes()
vérifie le tableau pour le value
passé en tant que argument
. Il renvoie true
si le tableau contient value
, sinon, il renvoie false
.
Avant, nous devions utiliser Array.prototype.indexOf()
pour vérifier si le tableau donné contient un élément ou non.
let numbers = ;
if(numbers.indexOf(2) !== -1) { console.log('Array contains value');}
Avec ECMA2016, nous pouvons écrire:
if(numbers.includes(2)) { console.log('Array contains value');}
Array.prototype.includes()
poignées NaN
mieux que Array.prototype.indexOf()
. Si le tableau contient NaN
, alors indexOf()
ne renvoie pas un index correct lors de la recherche de NaN
.
Array.prototype.includes()
renvoie la valeur correcte lors de la recherche de NaN
.
NaN
est une propriété de l’objet global JavaScript et représente une valeur qui n’est pas un nombre. Il existe des bizarreries connues lors de la comparaison de NaN
à une autre valeur. Ceux-ci sont abordés dans Array.prototype.includes()
, mais pas dans Array.protoype.indexOf
.
let numbers = ;
console.log(numbers.indexOf(NaN)); //Prints -1console.log(numbers.includes(NaN)); //Prints true
Opérateur d’exponentiation
JavaScript prend déjà en charge de nombreux opérateurs arithmétiques tels que +, -, *
et plus encore.
ECMAScript 2016 a introduit l’opérateur d’exponentiation, **
.
Il a le même but que Math.pow()
. Il renvoie le premier argument soulevé à la puissance du deuxième argument.
let base = 3;let exponent = 4;let result = base**exponent;
console.log(result); //81
Conclusion
Les nouvelles fonctionnalités introduites par ECMA2016 offrent des alternatives pratiques aux fonctionnalités existantes.
Pour l’avenir, ECMA2017 a été finalisé en juin de cette année. Les nouvelles fonctionnalités incluent async/await
, SharedArrayBuffer
et certaines méthodes utiles à Object.prototype
.