JavaScriptECMAScript 2017

Numéros de version JavaScript
Les anciennes versions de JS sont nommées par des numéros : ES5 (2009) et ES6 (2015).
A partir de 2016, les versions sont nommées par année : ECMAScript 2016, 2017, 2018, 2019, …
Nouvelles fonctionnalités dans ECMAScript 2017
Ce chapitre présente les nouvelles fonctionnalités d’ECMAScript 2017 :
Remplissage de chaîne JavaScript
ECMAScript 2017 a ajouté deux méthodes de chaîne à JavaScript : padStart()
et padEnd()
pour prendre en charge le remplissage au début et à la fin d’une chaîne.
Le remplissage de chaîne JavaScript est pris en charge dans tous les navigateurs modernes depuis avril 2017 :
Chrome 57 | Bord 15 | Firefox 48 | Safari 10 | Opéra 44 |
mars 2017 | Avr 2017 | août 2016 | septembre 2016 | mars 2017 |
Entrées d’objet JavaScript
ECMAScript 2017 a ajouté le Object.entries()
méthode aux objets.
Object.entries()
renvoie un tableau des paires clé/valeur dans un objet :
Exemple
const personne = {
prénom : “Jean”,
nom : “Biche”,
âge : 50 ans,
couleur des yeux : “bleu”
} ;
let text = Object.entries(person);
Object.entries()
simplifie l’utilisation d’objets dans des boucles :
Exemple
const fruits = {Bananes : 300, Oranges : 200, Pommes : 500} ;
laisser texte = “” ;
pour (laisser [fruit, value] of Object.entries(fruits)) {
texte += fruit + ” : ” + valeur + “
” ;
}
Essayez-le vous-même »
Object.entries()
simplifie également la conversion d’objets en cartes :
Exemple
const fruits = {Bananes : 300, Oranges : 200, Pommes : 500} ;
const myMap = new Map(Object.entries(fruits));
Essayez-le vous-même »
Object.entries()
est pris en charge dans tous les navigateurs modernes depuis mars 2017 :
Chrome 47 | Bord 14 | Firefox 47 | Safari 10.1 | Opéra 41 |
juin 2016 | août 2016 | juin 2016 | mars 2017 | octobre 2016 |
Valeurs d’objet JavaScript
Object.values()
sont similaires à Object.entries()
mais renvoie un tableau à une seule dimension des valeurs d’objet :
Exemple
const personne = {
prénom : “Jean”,
nom : “Biche”,
âge : 50 ans,
couleur des yeux : “bleu”
} ;
let text = Object.values(person);
Object.values()
est pris en charge dans tous les navigateurs modernes depuis mars 2017 :
Chrome 54 | Bord 14 | Firefox 47 | Safari 10.1 | Opéra 41 |
octobre 2016 | août 2016 | juin 2016 | mars 2017 | octobre 2016 |
Fonctions JavaScript asynchrones
Attente d’un délai d’attente
fonction asynchrone monAffichage() {
let myPromise = new Promise(function(myResolve, myReject) {
setTimeout(function() { myResolve(“Je t’aime !!”); }, 3000);
});
document.getElementById(“demo”).innerHTML = attendre maPromise ;
}
monAffichage();
Firefox et Chrome ont été les premiers navigateurs prenant en charge les fonctions JavaScript asynchrones :
Chrome 55 | Bord 15 | Firefox 52 | Safari 11 | Opéra 42 |
Déc 2016 | Avr 2017 | mars 2017 | septembre 2017 | Déc 2016 |
#JavaScriptECMAScript