Get to know MDN better
Dieser Inhalt wurde automatisch aus dem Englischen übersetzt, und kann Fehler enthalten. Erfahre mehr über dieses Experiment.
Diese Funktion ist gut etabliert und funktioniert auf vielen Geräten und in vielen Browserversionen. Sie ist seit Juli 2015 browserübergreifend verfügbar.
Die length Eigenschaft eines String Wertes enthält die Länge des Strings in UTF-16 Codeeinheiten.
Eine nicht-negative ganze Zahl.
| Schreibbar | nein |
| Aufzählbar | nein |
| Konfigurierbar | nein |
Diese Eigenschaft gibt die Anzahl der Codeeinheiten im String zurück. JavaScript verwendet die UTF-16 Kodierung, wobei jedes Unicode-Zeichen als eine oder zwei Codeeinheiten kodiert werden kann. Daher kann es vorkommen, dass der von length zurückgegebene Wert nicht mit der tatsächlichen Anzahl der Unicode-Zeichen im String übereinstimmt. Bei gängigen Schriftarten wie Latein, Kyrillisch, bekannten CJK-Zeichen usw. sollte dies kein Problem darstellen, aber wenn Sie mit bestimmten Schriftarten arbeiten, wie Emojis, mathematischen Symbolen oder seltenen chinesischen Zeichen, müssen Sie möglicherweise den Unterschied zwischen Codeeinheiten und Zeichen berücksichtigen.
Die Sprachspezifikation verlangt, dass Strings eine maximale Länge von 253 - 1 Elementen haben, was die Obergrenze für präzise Ganzzahlen darstellt. Ein String mit dieser Länge würde jedoch 16384TiB Speicher benötigen, was in kein vernünftiges Gerätespeicher passt, daher tendieren Implementierungen dazu, die Grenze zu senken, was erlaubt, dass die Länge des Strings in einer 32-Bit-Ganzzahl bequem gespeichert werden kann.
Wenn Sie mit großen Strings in anderen Kodierungen (wie UTF-8-Dateien oder Blobs) arbeiten, beachten Sie, dass beim Laden der Daten in einen JS-String die Kodierung immer UTF-16 wird. Die Größe des Strings kann sich von der Größe der Quelldatei unterscheiden.
Für einen leeren String ist length 0.
Die statische Eigenschaft String.length ist nicht mit der Länge von Strings verwandt. Sie ist die Arity der String Funktion (grob gesagt, die Anzahl ihrer formalen Parameter) und beträgt 1.
Da length Codeeinheiten anstelle von Zeichen zählt, können Sie, wenn Sie die Anzahl der Zeichen erhalten möchten, zuerst den String mit seinem Iterator aufteilen, der zeichenweise iteriert:
Wenn Sie Zeichen nach Grapheme-Clustern zählen möchten, verwenden Sie Intl.Segmenter. Sie können zuerst den String, den Sie aufteilen möchten, an die segment() Methode übergeben und dann über das zurückgegebene Segments Objekt iterieren, um die Länge zu ermitteln:
Da String ein primitiver Datentyp ist, hat der Versuch, einen Wert der length-Eigenschaft eines Strings zuzuweisen, keine beobachtbare Wirkung und wird im Strict Mode einen Fehler werfen.
| ECMAScript® 2027 Language Specification # sec-properties-of-string-instances-length |
JavaScript aktivieren, um diese Browser-Kompatibilitätstabelle anzuzeigen.
Der Bauplan für ein besseres Internet.
Besuche die gemeinnützige Muttergesellschaft der Mozilla Corporation, die Mozilla Foundation.
Teile dieses Inhalts sind ©1998–2026 von einzelnen mozilla.org-Mitwirkenden. Inhalte sind verfügbar unter einer Creative-Commons-Lizenz.