Segments.prototype.containing()
Baseline 2024Newly available
Since April 2024, this feature works across the latest devices and browser versions. This feature might not work in older devices or browsers.
Die containing()
-Methode von Segments
-Instanzen gibt ein Objekt zurück, das das Segment in der Zeichenkette beschreibt, das die Code-Einheit am angegebenen Index enthält.
Probieren Sie es aus
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}
Syntax
containing(codeUnitIndex)
Parameter
codeUnitIndex
Optional-
Eine Zahl, die den Index der Code-Einheit in der ursprünglichen Eingabezeichenkette angibt. Wenn der Wert weggelassen wird, ist der Standardwert
0
.
Rückgabewert
Ein Objekt, das das Segment der ursprünglichen Zeichenkette mit den folgenden Eigenschaften beschreibt, oder undefined
, wenn der angegebene Index außerhalb der Grenzen liegt.
segment
-
Eine Zeichenkette, die das aus der ursprünglichen Eingabezeichenkette extrahierte Segment enthält.
index
-
Der Code-Einheits-Index in der ursprünglichen Eingabezeichenkette, an dem das Segment beginnt.
input
-
Die vollständige Eingabezeichenkette, die segmentiert wurde.
isWordLike
-
Ein Boolean-Wert nur, wenn
granularity
"word"
ist; andernfallsundefined
. Wenngranularity
"word"
ist, istisWordLike
true
, wenn das Segment wortähnlich ist (d.h. aus Buchstaben/Zahlen/Ideogrammen/etc. besteht); andernfallsfalse
.
Beispiele
// ┃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
Spezifikationen
Specification |
---|
ECMAScript® 2025 Internationalization API Specification # sec-%segmentsprototype%.containing |