Intl.Segments.prototype.containing()
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.containing() renvoie un objet décrivant le segment de la chaîne de caractères contenant le codet situé à l'indice passé en argument.
Exemple interactif
const segmenterFr = new Intl.Segmenter("fr", { granularity: "word" });
const string1 = "Que ma joie demeure";
const segments = segmenterFr.segment(string1);
console.log(segments.containing(5));
// Expected output:
// Object {segment: 'ma', index: 4, input: 'Que ma joie demeure', isWordLike: true}
Syntaxe
containing(codeUnitIndex);
Paramètres
codeUnitIndexFacultatif-
Un nombre correspondant à l'indice du codet dans la chaîne de caractères à segmenter. Si cette valeur est absente, la valeur par défaut sera
0.
Valeur de retour
Un objet qui décrit le segment faisant partie de la chaîne de caractères originale, avec les propriétés suivantes (ou undefined si l'indice fourni est situé en dehors des limites de la chaîne) :
segment-
Une chaîne de caractères contenant le segment de la chaîne de caractères originale.
index-
L'indice du codet à partir duquel le segment en question commence au sein de la chaîne de caractères originale.
input-
La chaîne de caractères originale.
isWordLike-
Un booléen présent si
granularityvaut"word"; sinon,undefined. Sigranularityvaut"word",isWordLikevaudratruelorsque le segment est semblable à un mot (qu'il contient des lettres/nombres/idéogrammes/etc.) etfalsesinon.
Exemples
// ┃0 1 2 3 4 5┃6┃7┃8┃9 ← Indice des codets
// ┃A l l o n s┃-┃y┃!┃ ← Codets
const input = "Allons-y!";
const segmenter = new Intl.Segmenter("fr", { granularity: "word" });
const segments = segmenter.segment(input);
let current = undefined;
current = segments.containing();
// → { index: 0, segment: "Allons", isWordLike: true }
current = segments.containing(4);
// → { index: 0, segment: "Allons", isWordLike: true }
current = segments.containing(6);
// → { index: 6, segment: "-", isWordLike: false }
current = segments.containing(current.index + current.segment.length);
// → { index: 7, segment: "y", isWordLike: true }
current = segments.containing(current.index + current.segment.length);
// → { index: 8, segment: "!", isWordLike: false }
current = segments.containing(current.index + current.segment.length);
// → undefined
Spécifications
| Specification |
|---|
| ECMAScript® 2026 Internationalization API Specification> # sec-%segmentsprototype%.containing> |
Compatibilité des navigateurs
Chargement…