Iterator
Dans le fichier tableau.js supprimer l'héritage de Array.
Ajoutez la propriété Symbol.iterator à votre classe.
Modifiez Tableau, TableauNombres, TableauMots
1
class Tableau {
2
constructor(tab) {
3
let i=0;
4
for (let elt of tab) this[i++] = elt;
5
}
6
7
*[Symbol.iterator]() {
8
let i = 0;
9
while (this[i]) {
10
yield this[i++];
11
}
12
}
13
14
// reste du code
15
16
}
17
18
// class TableauNombres
19
20
// class TableauMots
21
22
const tabNb1 = new TableauNombres(3, 5, 1, 7);
23
console.log(tabNb1.somme()); // 16
24
const tabMot1 = new TableauMots('lundi', 'mardi', 'mercredi');
25
console.log(tabMot1.somme()); // 18
26
console.log(tabNb1.map((v) => v * 2)); // TableauNombres(4) [6, 10, 2, 14e
Vos tableaux peuvent utiliser les méthodes de Array.
Vérifiez dans la console.
Visualisez le prototypage de votre tableau.