Clés Iterables
importance: 5
Nous voulons obtenir un tableau de map.keys()
dans une variable puis lui appliquer des méthodes spécifiques aux tableaux, par ex: .push
.
Mais cela ne fonctionne pas :
let map = new Map();
map.set("name", "John");
let keys = map.keys();
// Error: keys.push is not a function
keys.push("more");
Pourquoi ? Comment pouvons-nous corriger le code pour que keys.push
fonctionne ?
C’est parce que map.keys()
retourne un itérable, mais pas un tableau.
Nous pouvons le convertir en tableau en utilisant Array.from
:
let map = new Map();
map.set("name", "John");
let keys = Array.from(map.keys());
keys.push("more");
alert(keys); // name, more