Intl.Segments.prototype[@@iterator]()
Baseline
2024
Newly available
Depuis April 2024, cette fonctionnalité fonctionne sur les appareils et les versions de navigateur les plus récents. Elle peut ne pas fonctionner sur les appareils ou navigateurs plus anciens.
La méthode Intl.Segments.@@iterator fait partie de l'implémentation du protocole itérable pour Intl.Segments et renvoie un nouvel objet itérateur qui permet de parcourir les éléments d'un objet Intl.Segmenter. Chaque élément est renvoyé sous la forme d'un objet.
Exemple interactif
const segmenterFr = new Intl.Segmenter("fr", { granularity: "word" });
const string1 = "Que ma joie demeure";
const iterator1 = segmenterFr.segment(string1)[Symbol.iterator]();
for (const segment of iterator1) {
if (segment.segment.length > 4) {
console.log(segment.segment);
}
}
// Expected output: "demeure"
Syntaxe
js
segments[Symbol.iterator];
La fonction disponible sur cet itérateur est .next(), elle est décrite dans la page du protocole itérateur.
Valeur de retour
Un nouvel objet itérateur.
Exemples
js
const segmenter = new Intl.Segmenter("fr", { granularity: "word" });
const input = "Moi ? N'est-ce pas ?";
const segments = segmenter.segment(input);
const iterator = segments[Symbol.iterator]();
let result = iterator.next();
while (!result.done) {
console.log(result.value);
result = iterator.next();
}
/* Affiche dans la console
{segment: 'Moi', index: 0, input: "Moi ? N'est-ce pas ?", isWordLike: true}
{segment: ' ', index: 3, input: "Moi ? N'est-ce pas ?", isWordLike: false}
{segment: '?', index: 4, input: "Moi ? N'est-ce pas ?", isWordLike: false}
{segment: ' ', index: 5, input: "Moi ? N'est-ce pas ?", isWordLike: false}
{segment: "N'est", index: 6, input: "Moi ? N'est-ce pas ?", isWordLike: true}
{segment: '-', index: 11, input: "Moi ? N'est-ce pas ?", isWordLike: false}
{segment: 'ce', index: 12, input: "Moi ? N'est-ce pas ?", isWordLike: true}
{segment: ' ', index: 14, input: "Moi ? N'est-ce pas ?", isWordLike: false}
{segment: 'pas', index: 15, input: "Moi ? N'est-ce pas ?", isWordLike: true}
{segment: ' ', index: 18, input: "Moi ? N'est-ce pas ?", isWordLike: false}
{segment: '?', index: 19, input: "Moi ? N'est-ce pas ?", isWordLike: false}
*/
Spécifications
| Specification |
|---|
| ECMAScript® 2026 Internationalization API Specification> # sec-%intlsegmentsprototype%-%symbol.iterator%> |
Compatibilité des navigateurs
Chargement…