La méthode [@@iterator]()
renvoie un nouvel objet Iterator
qui itère sur les points de code (codets) d'une chaîne de caractères, en renvoyant chaque point de code sous forme d'une chaîne de caractères.
Syntaxe
chaîneDeCaractères[Symbol.iterator]
Valeur de retour
Un nouvel objet Iterator
.
Exemples
Utiliser [@@iterator]()
var chaîne = "A\uD835\uDC68"; var chaîneIter = chaîne[Symbol.iterator](); console.log(chaîneIter.next().value); // "A" console.log(chaîneIter.next().value); // "\uD835\uDC68"
Utiliser [@@iterator]()
avec une boucle for..of
var chaine = "A\uD835\uDC68B\uD835\uDC69C\uD835\uDC6A"; for (var c of chaine) { console.log(c); } // "A" // "\uD835\uDC68" // "B" // "\uD835\uDC69" // "C" // "\uD835\uDC6A"
Spécifications
Spécification | État | Commentaires |
---|---|---|
ECMAScript 2015 (6th Edition, ECMA-262) La définition de 'String.prototype[@@iterator]()' dans cette spécification. |
Standard | Définition initiale. |
ECMAScript 2017 Draft (ECMA-262) La définition de 'String.prototype[@@iterator]()' dans cette spécification. |
Projet |
Compatibilité des navigateurs
Fonctionnalité | Chrome | Firefox (Gecko) | Internet Explorer | Opera | Safari |
---|---|---|---|---|---|
Support simple | (Oui) | 36 (36) [1] | Pas de support | Pas de support | Pas de support |
Fonctionnalité | Android | Chrome pour Android | Firefox Mobile (Gecko) | IE Mobile | Opera Mobile | Safari Mobile |
---|---|---|---|---|---|---|
Support simple | Pas de support | (Oui) | 36.0 (36) [1] | Pas de support | Pas de support | Pas de support |
[1] Dans les versions comprises entre Gecko 17 (Firefox 17 / Thunderbird 17 / SeaMonkey 2.14) et Gecko 26 (Firefox 26 / Thunderbird 26 / SeaMonkey 2.23 / Firefox OS 1.2) la propriété iterator
était utilisée à cet effet (bug 907077). Dans les versions allant de Gecko 27 (Firefox 27 / Thunderbird 27 / SeaMonkey 2.24) à Gecko 35 (Firefox 35 / Thunderbird 35 / SeaMonkey 2.32) la chaîne de caractères "@@iterator
" était utilisée en tant que substitut en attendant l'implémentation du Symbol
@@iterator (bug 918828).
Voir aussi
Étiquettes et contributeurs liés au document
Étiquettes :
Contributeurs à cette page :
SphinxKnight,
cdr
Dernière mise à jour par :
SphinxKnight,