Segments.prototype.containing()
Базовый уровень Недавно доступно
Эта функция работает на новейших устройствах и версиях браузеров. Эта функция может не работать на старых устройствах или версиях браузеров. Она доступна в браузерах с апреля 2024 года.
Метод containing() экземпляров Segments возвращает объект, описывающий сегмент в строке, который включает кодовую единицу по указанному индексу.
Попробуйте
const segmenterFr = new Intl.Segmenter("fr", { granularity: "word" });
const string = "Que ma joie demeure";
const segments = segmenterFr.segment(string);
console.log(segments.containing(5));
// Expected output:
// Object {segment: 'ma', index: 4, input: 'Que ma joie demeure', isWordLike: true}
Синтаксис
containing(codeUnitIndex)
Параметры
-
codeUnitIndexНеобязательный - Число, определяющее индекс кодовой единицы в исходной входной строке. Если значение опущено, по умолчанию используется
0.
Возвращаемое значение
Объект, описывающий сегмент исходной строки со следующими свойствами, или undefined, если предоставленное значение индекса выходит за допустимые пределы.
-
segment - Строка, содержащая сегмент, извлеченный из исходной входной строки.
-
index - Индекс кодовой единицы в исходной входной строке, с которого начинается сегмент.
-
input - Полная входная строка, которая была сегментирована.
-
isWordLike - Логическое значение, только если
granularityравно"word"; в противном случае —undefined. Еслиgranularityравно"word", тоisWordLikeравноtrue, если сегмент является "похожим на слово" (т.е. состоит из букв/цифр/идеографов/и т. д.); в противном случае —false.
Примеры
// ┃0 1 2 3 4 5┃6┃7┃8┃9 ← code unit index
// ┃A l l o n s┃-┃y┃!┃ ← code unit
const input = "Allons-y!";
const segmenter = new Intl.Segmenter("fr", { granularity: "word" });
const segments = segmenter.segment(input);
let 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
Спецификации
| Спецификация |
|---|
| ECMAScript® 2027 Internationalization API Specification # sec-%intlsegmentsprototype%.containing |
Совместимость с браузерами
| Настольные компьютеры | Мобильные устройства | Сервер | |||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Opera | Safari | Chrome Android | Firefox for Android | Opera Android | Safari on iOS | Samsung Internet | WebView Android | WebView on iOS | Bun | Deno | Node.js | |
containing |
87 |
87 |
125 |
73 |
14.1 |
87 |
125 |
62 |
14.5 |
14.0 |
87 |
14.5 |
1.0.0 |
1.8 |
16.0.0 |
См. также
© 2005–2025 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/Segmenter/segment/Segments/containing