Veraltet: Diese Funktion wird nicht mehr empfohlen. Obwohl einige Browser sie möglicherweise noch unterstützen, könnte sie bereits aus den relevanten Webstandards entfernt worden sein, in Kürze entfernt werden oder nur noch aus Kompatibilitätsgründen bestehen. Vermeiden Sie die Verwendung und aktualisieren Sie vorhandenen Code, falls möglich; siehe die Kompatibilitätstabelle am Ende dieser Seite, um Ihre Entscheidung zu unterstützen. Beachten Sie, dass diese Funktion jederzeit aufhören könnte zu funktionieren.
Die substr()
Methode von String
Werten gibt einen Teil dieses Strings zurück, beginnend am angegebenen Index und für eine bestimmte Anzahl von Zeichen danach.
Hinweis: substr()
ist nicht Teil der Haupt-ECMAScript-Spezifikation â es ist in Anhang B: Zusätzliche ECMAScript-Funktionen für Webbrowser definiert, der optional normative für Nicht-Browser-Laufzeiten ist. Daher wird empfohlen, die Standardmethoden String.prototype.substring()
und String.prototype.slice()
zu verwenden, um den Code möglichst plattformübergreifend benutzerfreundlich zu gestalten. Die Seite String.prototype.substring()
enthält einige Vergleiche zwischen den drei Methoden.
const str = "Mozilla";
console.log(str.substr(1, 2));
// Expected output: "oz"
console.log(str.substr(2));
// Expected output: "zilla"
Syntax
substr(start)
substr(start, length)
Parameter
start
Der Index des ersten Zeichens, das in dem zurückgegebenen Substring enthalten sein soll.
length
Optional
Die Anzahl der Zeichen, die extrahiert werden sollen.
Ein neuer String, der den angegebenen Teil des gegebenen Strings enthält.
BeschreibungDie substr()
Methode eines Strings extrahiert length
Zeichen beginnend beim start
Index aus dem String.
start >= str.length
, wird ein leerer String zurückgegeben.start < 0
, beginnt der Index vom Ende des Strings zu zählen. Genauer gesagt startet in diesem Fall der Substring bei max(start + str.length, 0)
.start
weggelassen oder undefined
ist, wird er als 0
behandelt.length
weggelassen oder undefined
ist, oder wenn start + length >= str.length
, extrahiert substr()
Zeichen bis zum Ende des Strings.length < 0
, wird ein leerer String zurückgegeben.start
als auch length
wird NaN
als 0
behandelt.Obwohl es empfohlen wird, substr()
zu vermeiden, gibt es keinen trivialen Weg, substr()
in einem vorhandenen Code zu entweder slice()
oder substring()
zu migrieren, ohne im Wesentlichen ein Polyfill für substr()
zu schreiben. Zum Beispiel haben str.substr(a, l)
, str.slice(a, a + l)
und str.substring(a, a + l)
unterschiedliche Ergebnisse, wenn str = "01234", a = 1, l = -2
â substr()
gibt einen leeren String zurück, slice()
gibt "123"
zurück, während substring()
"0"
zurückgibt. Der tatsächliche Refaktorisierungspfad hängt vom Wissen über die Reichweite von a
und l
ab.
const aString = "Mozilla";
console.log(aString.substr(0, 1)); // 'M'
console.log(aString.substr(1, 0)); // ''
console.log(aString.substr(-1, 1)); // 'a'
console.log(aString.substr(1, -1)); // ''
console.log(aString.substr(-3)); // 'lla'
console.log(aString.substr(1)); // 'ozilla'
console.log(aString.substr(-20, 2)); // 'Mo'
console.log(aString.substr(20, 2)); // ''
Spezifikationen Browser-Kompatibilität Siehe auch
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4