Hinweis: Wenn Sie es eilig haben und / oder nach einer kurzen Antwort suchen, scrollen Sie zum Ende der Antwort und lesen Sie die letzten beiden Zeilen. Wenn Sie es nicht eilig haben, lesen Sie das Ganze.
Lassen Sie mich zunächst die Fakten darlegen:
Syntax:
string.slice(start,end)
string.substr(start,length)
string.substring(start,end)
Anmerkung 1:slice()==substring()
Was es macht?
Die slice()
Methode extrahiert Teile einer Zeichenfolge und gibt die extrahierten Teile in einer neuen Zeichenfolge zurück.
Die substr()
Methode extrahiert Teile einer Zeichenfolge, beginnend mit dem Zeichen an der angegebenen Position, und gibt die angegebene Anzahl von Zeichen zurück.
Die substring()
Methode extrahiert Teile einer Zeichenfolge und gibt die extrahierten Teile in einer neuen Zeichenfolge zurück.
Anmerkung 2:slice()==substring()
Ändert die ursprüngliche Zeichenfolge?
slice()
Nicht
substr()
nicht
substring()
Nicht
Anmerkung # 3:slice()==substring()
Negative Zahlen als Argument verwenden:
slice()
Wählt Zeichen ab dem Ende der Zeichenfolge aus.
substr()
Wählt Zeichen ab dem Ende der Zeichenfolge aus.
substring()
Funktion
3 wird nicht ausgeführt. Hinweis 3:slice()==substr()
Wenn das erste Argument größer als das zweite ist: Wird
slice()
nicht ausgeführt,
substr()
da das zweite Argument KEINE Position, sondern ein Längenwert ist. Es wird wie gewohnt ausgeführt, ohne Probleme
substring()
werden die beiden Argumente ausgetauscht und wie gewohnt ausgeführt
Das erste Argument:
slice()
Erforderlich, zeigt an: Startindex
substr()
erforderlich, zeigt an: Startindex
substring()
erforderlich, zeigt an: Startindex
Hinweis Nr. 4:slice()==substr()==substring()
das zweite Argument:
slice()
Optional, Die Position (bis zu, aber nicht einschließlich), an der die Extraktion beendet werden soll
substr()
Optional, Die Anzahl der zu extrahierenden Zeichen
substring()
Optional, Die Position (bis zu, aber nicht einschließlich), an der die Extraktion beendet werden soll
Hinweis Nr. 5:slice()==substring()
Was ist, wenn das zweite Argument weggelassen wird?
slice()
Wählt alle Zeichen von der Startposition bis zum Ende der Zeichenfolge aus.
substr()
Wählt alle Zeichen von der Startposition bis zum Ende der Zeichenfolge aus.
substring()
Wählt alle Zeichen von der Startposition bis zum Ende der Zeichenfolge aus.
Hinweis 6:slice()==substr()==substring()
Man kann also sagen, dass es einen Unterschied zwischen slice()
und gibt substr()
, während substring()
es sich im Grunde um eine Kopie von handelt slice()
.
in Zusammenfassung:
Wenn Sie den Index (die Position) kennen, an dem Sie anhalten (aber NICHT einschließen), verwenden slice()
Sie, wenn Sie die Länge der zu extrahierenden Zeichen kennen substr()
.
slice
ist derjenige mit dem am wenigsten unerwarteten Verhalten.