Der Unterschied zwischen String.slice und String.substring in JavaScript
-
Was ist
String
undprototype
in JavaScript? -
Was ist
slice
undsubstring
in JavaScript? -
Was sind die Ähnlichkeiten zwischen
slice
undsubstring
in JavaScript? -
Was sind die Unterschiede zwischen
slice
undsubstring
in JavaScript?
In diesem Tutorial-Artikel werden wir diskutieren, was Slice und Substring in JavaScript sind und was sie unterscheidet und was nicht. Folgende Fragen werden in diesem Artikel behandelt:
- Was ist String und Prototyp?
- Was ist
slice
undsubstring
- Was sind die Ähnlichkeiten zwischen
slice
undsubstring
- Was sind die Unterschiede zwischen
slice
undsubstring
Was ist String
und prototype
in JavaScript?
Beginnen wir mit der Diskussion des Objekts String
. Das String-Objekt wird verwendet, um eine Zeichenkette darzustellen, und wird häufig mit Daten verwendet, die als Text dargestellt werden müssen.
Hinweis: Grundwerte können keine Eigenschaften oder Methoden haben.
JavaScript behandelt primitive Werte als Objekte, indem es sie in einen speziellen Objekt-Wrapper einhüllt, der zusätzliche Funktionen wie Hilfsmethoden und Eigenschaften bereitstellt. Jeder primitive Typ hat seinen “Objekt-Wrapper”; der String-Typ heißt String
.
Konzentrieren wir uns auf prototype
, ein prototype
ist eine globale Eigenschaft mit allen JavaScript-Objekten. Es ermöglicht das Hinzufügen neuer Methoden und Eigenschaften zu bestehenden Objekten.
function footballClub(name, stadium, founded) {
this.name = name;
this.stadium = stadium;
this.founded = founded;
}
footballClub.prototype.firstTeamPlayers = 11;
const FCB = new footballClub('FC Barcelona', 'Camp Nou', 1899);
console.log(FCB.firstTeamPlayers);
// logs 11
Ausgabe:
11
Im obigen Beispiel hat jede footballClub
-Instanz die Eigenschaft firstTeamPlayers
auf 11
gesetzt. In ähnlicher Weise können Sie mit der Eigenschaft prototype
Strings neue Eigenschaften und Methoden hinzufügen.
Was ist slice
und substring
in JavaScript?
slice
und substring
sind Prototypeigenschaften, die in Form von Funktionen auf allen JavaScript-Strings existieren. Die Funktion slice
und substring
extrahiert einen Teil eines Strings und gibt ihn als neuen String zurück. Die Methode slice
ändert die ursprüngliche Zeichenkette
nicht.
Es braucht zwei Argumente, das erste Argument gibt den Startindex an, von dem aus die Extraktion gestartet werden soll (der Index beginnt bei 0), und das zweite Argument gibt den Endindex des Strings an (der Endindex ist nicht Teil der Extraktion).
let str = 'Gonna be extracted,Help!';
let slicedStr = str.slice(3, 8);
let substringStr = str.substring(3, 8);
console.log(slicedStr) // logs: na be
console.log(substringStr) // logs: na be
Ausgabe:
na be
na be
Was sind die Ähnlichkeiten zwischen slice
und substring
in JavaScript?
Wenn start
gleich stop
ist, geben sowohl slice
als auch substring
einen leeren String zurück.
let str = 'Gonna be extracted,Help!';
let slicedStr = str.slice(8, 8);
let substringStr = str.substring(9, 8);
console.log(slicedStr) // logs:
console.log(substringStr) // logs:
Ausgabe:
Wenn stop
(zweites Argument) nicht sowohl slice
als auch substring
enthält, werden Zeichen bis zum Ende des Strings extrahiert.
let str = "Gonna be extracted,Help!";
let slicedStr = str.slice(3);
let substringStr = str.substring(3);
console.log(slicedStr) // logs: na be extracted,Help!
console.log(substringStr) // logs: na be extracted,Help!
Ausgabe:
na be extracted,Help!
na be extracted,Help!
Wenn entweder das Argument start
oder stop
größer als die Länge des Strings ist, wird die Länge des Strings anstelle des übergebenen Arguments verwendet.
let str = 'Gonna be extracted,Help!';
let slicedStr = str.slice(1, 100);
let substringStr = str.substring(1, 100);
console.log(slicedStr) // logs: onna be extracted,Help!
console.log(substringStr) // logs: onna be extracted,Help!
Ausgabe:
onna be extracted,Help!
onna be extracted,Help!
Was sind die Unterschiede zwischen slice
und substring
in JavaScript?
Wenn das Argument start
grösser ist als das Argument stop
in slice
, wird ein leerer String zurückgegeben, während substring
diese beiden Argumente vertauscht, wenn dies der Fall ist.
let str = 'Gonna be extracted,Help!';
let slicedStr = str.slice(8, 3);
let substringStr = str.substring(8, 3);
console.log(slicedStr) // logs:
console.log(substringStr) // logs: na be
Ausgabe:
na be
Wenn das Argument start
oder das Argument stop
negativ oder NaN
ist, wird es so behandelt, als ob sein Wert 0
in substring
wäre, wohingegen in slice
, wenn das Argument start
negativ ist, Zeichen von das Ende der Saite.
let str = 'Gonna be extracted,Help!';
let slicedStr = str.slice(-1);
let substringStr = str.substring(-1);
console.log(slicedStr) // logs: !
console.log(substringStr) // logs: Gonna be extracted,Help!
Ausgabe:
!
Gonna be extracted,Help!