Heim >Web-Frontend >js-Tutorial >Ein tiefer Einblick in JavaScript-String-Objekte: Die Grundlagen

Ein tiefer Einblick in JavaScript-String-Objekte: Die Grundlagen

WBOY
WBOYOriginal
2016-05-16 16:10:561401Durchsuche

String-String-Objekt

1. Einleitung

String-Objekt, Operationen an Strings ausführen, z. B. einen Teilstring abfangen, nach Strings/Zeichen suchen, Groß-/Kleinschreibung konvertieren usw.

2. Definition

2.1 neuer String(Value)-Konstruktor: Gibt ein String-Objekt zurück, dessen Inhalt Value ist
Parameter:

①value {String}: String

Rückgabewert:

{String object} gibt ein String-Objekt zurück, dessen Inhalt Value

ist

Beispiel:

Code kopieren Der Code lautet wie folgt:

var demoStr = new String('abc');
console.log(typeof demoStr); // => object
console.log(demoStr); // => abc

2.2 Direkte Zuordnung (empfohlen)
Beispiel:

Code kopieren Der Code lautet wie folgt:

var demoStr = 'abc';
console.log(typeof demoStr); // string
console.log(demoStr); // => abc

3. Instanzattribute

3.1 Länge: Gibt die Anzahl der Zeichen in der Zeichenfolge zurück

Code kopieren Der Code lautet wie folgt:

var s = 'abc';
console.log(s.length); // => 3
console.log('Happy New Year'.length); // => 4: Ein chinesisches Schriftzeichen wird ebenfalls als Menge gezählt
console.log(''.length); // => 0: leere Zeichenfolge gibt 0
zurück

4. Instanzmethoden

Hinweis: Die Instanzmethode von string ändert nicht die Zeichenfolge selbst, sondern gibt nur das Ergebnis der Operation zurück.

4.1 charAt(index): Gibt das Zeichen an der angegebenen Position in einer Zeichenfolge zurück. Die Zahl beginnt bei 0. Wenn ein nicht vorhandener Wert übergeben wird, wird eine leere Zeichenfolge zurückgegeben
Parameter:

①index {int}: Positionsindex, berechnet ab 0

Rückgabewert:

{string} gibt das Zeichen an der angegebenen Position in einem String zurück; wenn ein nicht vorhandener Positionswert übergeben wird, wird ein leerer String zurückgegeben

Beispiel:

Code kopieren Der Code lautet wie folgt:

var s = 'abc';
console.log(s.charAt(1)); // => b: Gibt das Zeichen an Position 1 zurück
console.log(s); // => Hat keinen Einfluss auf das ursprüngliche Array
console.log(s.charAt(5)); // => '': Holen Sie sich ein Zeichen an einer nicht vorhandenen Position und geben Sie einen leeren String mit der Länge 0 zurück

4.2 charCodeAt(index): Gibt die Unicode-Kodierung des Zeichens an der angegebenen Position in einer Zeichenfolge zurück
Parameter:

①index {int}: Positionsindex, berechnet ab 0

Rückgabewert:

{Nummer} Gibt die Unicode-Codierung des Zeichens an der angegebenen Position in einer Zeichenfolge zurück. Wenn ein nicht vorhandener Positionswert übergeben wird, wird NaN

zurückgegeben

Beispiel:

Code kopieren Der Code lautet wie folgt:

var s = 'abc';
console.log(s.charCodeAt(0)); // => 98: Unicode-Kodierung des Zeichens b
console.log(s.charCodeAt(5)); // => Holen Sie sich ein Zeichen, das nicht existiert, und geben Sie NaN zurück

4.3 concat(value1, value2 ... valueN): Verketten Sie eine oder mehrere Zeichenfolgen und geben Sie die verkettete Zeichenfolge
zurück Parameter:

①value1,value2 ... valueN {string}: ein oder mehrere Strings

Rückgabewert:

{string} Gibt die verkettete Zeichenfolge

zurück

Beispiel:

Code kopieren Der Code lautet wie folgt:

var s = 'abc';
console.log(s.concat('d')); // => console.log(s); // => hat keinen Einfluss auf die ursprüngliche Zeichenfolge
console.log(s.concat('d', 'e')); // =>

4.4 indexOf(value, |startPosition): Suchen Sie eine Zeichenfolge oder ein Zeichen von vorne nach hinten in der Instanz und geben Sie die gefundene Position zurück (gezählt von 0). Wenn nicht gefunden, geben Sie -1
zurück Parameter:

①value {string}: Suchzeichenfolge

②startPosition {int} Optional: die Startposition, an der mit der Suche begonnen werden soll. Standardmäßig wird die Suche ab Position 0 gestartet

Rückgabewert:

{int} Gibt die gefundene Position zurück (ab 0 gezählt). Wenn nicht gefunden, geben Sie -1

zurück

Beispiel:

Code kopieren Der Code lautet wie folgt:

var s = 'abc';
console.log(s.indexOf('b')); // => console.log(s.indexOf('d')); // => -1 :
nicht gefunden console.log(s.indexOf('b', 2)); // => -1: Beginnen Sie mit der Suche nach
ab Position 2 (dem 3. Zeichen)
4.5 lastIndexOf(value, |startPosition): Suchen Sie in der Instanz von hinten nach vorne nach einer Zeichenfolge oder einem Zeichen und geben Sie die gefundene Position zurück (von 0 an gezählt). Wenn nicht gefunden, geben Sie -1

zurück Parameter:

①value {string}: Suchzeichenfolge

②startPosition {int} Optional: die Startposition, an der mit der Suche begonnen werden soll. Standardmäßig wird die Suche am Ende gestartet

Rückgabewert:

{int} Gibt die gefundene Position zurück (ab 0 gezählt). Wenn nicht gefunden, geben Sie -1

zurück

Beispiel:

Code kopieren Der Code lautet wie folgt:
var s = 'abcabc';
console.log(s.lastIndexOf('a')); // => 3: Suche von hinten nach vorne
console.log(s.lastIndexOf('d')); // => -1: Nicht gefunden gibt -1
zurück console.log(s.lastIndexOf('a', 2)); // => 0: Suche vorwärts
ab Position 2 (dem 3. Zeichen)
4.6 localeCompare(value): Vergleichen Sie die Instanz mit dem Parameter und geben Sie das Vergleichsergebnis zurück

Parameter:

①value {string}: Die zu vergleichende Zeichenfolge

Rückgabewert:

0: Die Instanz ist größer als der Parameter

 1: Instanz und Parameter sind gleich

-1: Die Instanz ist kleiner als der Parameter

Beispiel:

Code kopieren Der Code lautet wie folgt:
var s='abc';
console.log(s.localeCompare('ab')); // => 1: Die Instanz ist größer als der Parameter
console.log(s.localeCompare('abc')); // => 0: Instanz und Parameter sind gleich
console.log(s.localeCompare('abd')); // => -1: Die Instanz ist kleiner als der Parameter

4.7 match(regexp): Verwenden Sie reguläre Ausdrücke für die passende Suche

Parameter:

①regexp {regexp}: regulärer Ausdruck, z. B.: /d /

Rückgabewert:

Je nachdem, ob der reguläre Ausdruck das Attribut „g“ hat, werden unterschiedliche Ergebnisse zurückgegeben. Wenn keine Übereinstimmung vorliegt, wird {null} zurückgegeben:

①Der reguläre Ausdruck hat nicht das Attribut „g“, führt einen Match durch und gibt ein {einzelnes Match}-Ergebnisobjekt zurück. Das Objekt enthält die folgenden Attribute:

Array-Seriennummer: Gibt das Übereinstimmungsergebnis an, 0 ist der übereinstimmende Text, 1 ist das Übereinstimmungsergebnis der ersten Klammer von rechts nach rechts, 2 ist die zweite Klammer und so weiter

Indexattribut: gibt an, dass sich der übereinstimmende Text an der Startposition der übereinstimmenden Quelle befindet

Eingabeattribut: gibt die passende Quelle an

②Der reguläre Ausdruck hat das Attribut „g“, führt einen globalen Abgleich durch, findet alle übereinstimmenden Objekte in der Zeichenfolge und gibt ein {String-Array} zurück: Das Array-Element enthält jedes übereinstimmende Objekt in der Zeichenfolge, mit Ausnahme des regulären Ausdrucks in Klammern Die Zeichenfolge stellt außerdem keine Index- und Eingabeattribute bereit.

Beispiel:

Code kopieren Der Code lautet wie folgt:

// 1. Einzeltreffer
var s = 'a1b2c3d4';
var mc = s.match(/d /); // => Das Ergebnis des ersten regulären Spiels abrufen
if (mc != null) {
console.log(mc.index); // => 1: Das Matching-Ergebnis befindet sich an der Startposition der Matching-Quelle
console.log(mc.input) // => a1b2c3d4: passende Quelle
console.log(mc[0]); // => 1: Holen Sie sich das passende Ergebnis
}
// 2. Globaler Abgleich
var mcArray = s.match(/d /g); // => Alle regulären übereinstimmenden Zahlen abrufen
if (mcArray != null) {
for (var i = 0,len=mcArray.length; i < len; i ) {
      var mc=mcArray[i];
console.log(mc); // => 1,2,3,4: Erhalten Sie die passenden Ergebnisse
}
}
// 3. Matching mit Klammern
s = 'a1b2c3d4';
mc = s.match(/[a-z]([1-9])/); // => Das Ergebnis des ersten regulären Spiels abrufen
if (mc != null) {
console.log(mc.index); // => 0: Das Matching-Ergebnis befindet sich an der Startposition der Matching-Quelle
console.log(mc.input) // => a1b2c3d4: passende Quelle
console.log(mc[0]); // => a1: Seriennummer 0 gibt das übereinstimmende Ergebnis an
console.log(mc[1]); // => 1: Seriennummer 1 stellt das Unterabgleichsergebnis in der ersten Klammer dar
}

4.8 replace(regexp, replaceStr): Ersetzen Sie die Teilzeichenfolge, die mit dem regulären Ausdruck übereinstimmt, und geben Sie die ersetzte Zeichenfolge zurück
Parameter:

①regexp {regexp}: Regulärer Ausdruck. zB:/d/

②replaceStr {string function}:

1) Wenn es sich um eine Zeichenfolge handelt, bedeutet dies, dass alle übereinstimmenden Zeichenfolgen durch diese Zeichenfolge ersetzt werden

Das $-Zeichen in einer Zeichenfolge hat eine besondere Bedeutung:

$1,$2 ... $99: Zeigt die passenden Unterelemente von ①Parametern von links nach rechts in Klammern an

$&: Gibt die Unterelemente an, die mit dem gesamten ①-Parameter übereinstimmen

$$: Dollarzeichen

2) Wenn es sich um eine Funktion handelt, bedeutet dies, dass diese Funktion für jedes übereinstimmende Ergebnis aufgerufen wird. Der einzige Parameter der Funktion ist das übereinstimmende Ergebnis und es wird ein Ersatzergebnis zurückgegeben.

Rückgabewert:

{string} gibt einen ersetzten String

zurück

Beispiel:

Code kopieren Der Code lautet wie folgt:
var oldStr = 'a1b2c3d4';
// 1. Wenn die reguläre Übereinstimmung mit [allen] Zahlen übereinstimmt, ersetzen Sie sie durch: ',' Komma
var newStr = oldStr.replace(/d /g, ',');
console.log(newStr); // => a,b,c,d,
// 2. Die reguläre Übereinstimmung gleicht [alle] Zahlen ab und ersetzt sie durch: passendes Ergebnis ',' Komma
newStr = oldStr.replace(/d /g, '$&,');
console.log(newStr); // => // 3. Die reguläre Übereinstimmung gleicht [alle] Zahlen ab, ruft die Funktion für jedes übereinstimmende Ergebnis auf und gibt das ersetzte Ergebnis zurück
newStr = oldStr.replace(/d /g, Funktion (Wort) {
Wenn (Wort % 2 == 0) {
         „gerade“ zurückgeben;
}
Rückgabe 'ungerade';
});
console.log(newStr); // => a ungerade b gerade c ungerade d gerade


4.9 search(regexp): Gibt die Position zurück, an der die erste Übereinstimmung des regulären Ausdrucks gefunden wird Parameter:


①regexp {regexp}: Regulärer Ausdruck. zB:/d/

Rückgabewert:

{int} Gibt die Position des ersten passenden Ergebnisses zurück; wenn kein passendes Ergebnis gefunden wird, wird -1 zurückgegeben

Beispiel:

console.log( 'abcd'.search(/d /) ); // => -1 : Nummer
nicht gefunden console.log( 'abcd1234'.search(/d /) ); // => Die Positionsnummer ist 4, gibt die Position der ersten Nummer zurück

4.10 Slice(start, |end): Gibt den Teilstring von der Startposition des Strings bis zur Position vor dem Ende zurück
Parameter:

①start {int}: Der Startpositionsindex der Teilzeichenfolgenextraktion (einschließlich des Zeichens an dieser Position).

Wenn die Zahl negativ ist, bedeutet dies, dass vom Ende der Zeichenfolge aus gezählt wird. Beispiel: -1 steht für die letzte Zeichenfolge, -2 steht für das vorletzte Zeichen.

②end {int} Optional: Der Endpositionsindex der Teilzeichenfolgenextraktion (mit Ausnahme des Zeichens an dieser Position).

Wenn die Zahl negativ ist, bedeutet dies, dass vom Ende der Zeichenfolge aus gezählt wird. Beispiel: -1 steht für die letzte Zeichenfolge, -2 steht für das vorletzte Zeichen.

Wenn dieser Parameter weggelassen wird, werden alle Zeichen von der Startposition bis zum Ende zurückgegeben.

Hinweis:

Die Reihenfolge beim Extrahieren von Teilzeichenfolgen ist von links nach Ende. Wenn die Startindexposition größer als die Endindexposition ist, wird eine leere Zeichenfolge zurückgegeben.

Rückgabewert:

{string} gibt den Teilstring von der Startposition des Strings bis zur Position vor dem Ende zurück.

Beispiel:

Code kopieren Der Code lautet wie folgt:

var s = 'abcdefg';
console.log( s.slice(1) ); // bcdefg: den Endparameter weglassen, die Endposition ist das Ende
console.log( s.slice(1, 3) ); // bc: Den Teilstring von Position Nummer 1 bis Position Nummer 2 zurückgeben (die vorherige Position beenden)
console.log( s.slice(-3) ); // efg: Gibt alle Zeichen vom dritten bis zum Ende zurück
console.log( s.slice(-3, -1) ); // ef: Gibt alle Zeichen
zurück, beginnend vom drittletzten bis zum zweiten (der vorherigen Endposition)

4.11 split(delimiter, |arrayLength): Teilen Sie die Zeichenfolge gemäß einem bestimmten Trennzeichen in ein Array von Zeichenfolgen auf und geben Sie
zurück Parameter:

①delimiter {regexp string}: Das angegebene Trennzeichen, das ein regulärer Ausdruck oder eine Zeichenfolge sein kann.

②arrayLength {int} Optional: Die Länge des geteilten Arrays. Wenn es weggelassen wird, werden alle geteilten Teilzeichenfolgen zurückgegeben.

Hinweis:

Wenn sich das Trennzeichen am ersten oder letzten Zeichen der Zeichenfolge befindet, wird dem zurückgegebenen Array eine leere Zeichenfolge hinzugefügt.

Rückgabewert:

{ string[] } Gibt ein Array bestehend aus Strings zurück.

Beispiel:

Code kopieren Der Code lautet wie folgt:

console.log( 'a,b,c,d,e'.split(',') ); // =>
console.log( ',a,b,c,d,e,'.split(',') ); // => , „e“, „“]: Wenn das Trennzeichen am Anfang oder Ende steht, wird eine leere Zeichenfolge
hinzugefügt console.log( 'a,b,c,d,e'.split(',',3) ); // => Teilzeichenfolge von
console.log( 'a1b2c3d4e'.split(/d/) ); // => ["a", "b", "c", "d", "e"] : Zahlen als Trennzeichen verwenden

4.12 substr(start, |wordLength): Gibt einen Teilstring zurück, beginnend an der Startposition des Strings bis zur Länge von wordLength
Parameter:

①start {int}: Der Startpositionsindex der Teilzeichenfolgenextraktion (einschließlich des Zeichens an dieser Position).

Wenn die Zahl negativ ist, bedeutet dies, dass vom Ende der Zeichenfolge aus gezählt wird. Beispiel: -1 steht für die letzte Zeichenfolge, -2 steht für das vorletzte Zeichen.

②wordLength {int} Optional: Extrahieren Sie die Länge der Zeichen. Wenn dieser Parameter weggelassen wird, werden alle Zeichen von der Startposition bis zum Ende zurückgegeben.

Rückgabewert:

{string} gibt die extrahierte Zeichenfolge zurück

Beispiel:

Code kopieren Der Code lautet wie folgt:

ar s = 'abcdefg';
onsole.log( s.substr(0) ); // => Lassen Sie den zweiten Parameter weg und geben Sie das Zeichen von Position Nummer 0 bis zum letzten Zeichen zurück
onsole.log( s.substr(0, 3) ); // => zurückgeben ab Position Nummer 0, 3 Zeichen zählend
onsole.log( s.substr(2, 4) ); // => Rückkehr ab Position Nummer 2, 4 Zeichen zählend
onsole.log( s.substr(-2, 3) ); // fg: Rückgabe beginnend mit der vorletzten Zeichenfolge, Zählung 3 (wenn die Zeichenlänge größer ist, werden nur zählbare Zeichen zurückgegeben)

4.13 substring(start, |end): Gibt den Teilstring von der Startposition des Strings bis zur Position vor dem Ende zurück
Parameter:

①start {int}: Der Startpositionsindex der Teilzeichenfolgenextraktion (einschließlich des Zeichens an dieser Position). Die Zahl darf nicht negativ sein. Wenn es sich um eine negative Zahl handelt, wird sie als 0 verarbeitet

②end {int} Optional: Der Endpositionsindex der Teilzeichenfolgenextraktion (mit Ausnahme des Zeichens an dieser Position). Die Zahl darf nicht negativ sein. Wenn es sich um eine negative Zahl handelt, wird sie als 0 verarbeitet

Rückgabewert:

{string} gibt den Teilstring von der Startposition des Strings bis zur Position vor dem Ende zurück.

Beispiel:

Code kopieren Der Code lautet wie folgt:

var s = 'abcdefg';
console.log( s.substring(0) ); // => Lassen Sie den Endparameter weg und geben Sie das Zeichen von Position Nummer 0 bis zum letzten Zeichen zurück
console.log( s.substring(0, 3) ); // => Gibt Zeichen
von Position Nummer 0 bis Position Nummer 2 zurück (das vorherige von ② Parameter) console.log( s.substring(2, 4) ); // => Gibt die Zeichen
von Position Nummer 2 bis Position Nummer 3 zurück (das vorherige von ② Parameter) console.log( s.substring(-3, 3) ); // abc: Wenn der Parameter negativ ist, wird er als Zahl 0 verarbeitet, sodass dieser Parameter tatsächlich die Zeichen von Position Nummer 0 bis Position Nummer 3
4.14 toUpperCase(): Wandelt die Zeichenfolge in Großbuchstaben um und gibt

zurück 4.15 toUpperCase(): Wandelt die Zeichenfolge in Kleinbuchstaben um und gibt
zurück 4.16 trim(): Leerzeichen am Anfang und Ende der Zeichenfolge entfernen und
zurückgeben

Das Obige ist der gesamte Inhalt dieses Artikels. Ich hoffe, dass jeder durch diesen Artikel ein neues Verständnis des String-Objekts in JavaScript erlangen kann.

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn