JavaScript-String

Kursempfehlung:

JavaScript-String

JavaScript-Zeichenketten werden zum Speichern und Verarbeiten von Text verwendet.

Beispiel

JavaScript-Zeichenketten sind Null oder mehrere Zeichen in Anführungszeichen.

Probieren Sie es selbst aus

var x = \"Bill Gates\";

Beispiel

Sie können Single- oder Double-Anführungszeichen verwenden:
var carname = \"Porsche 911\";

Probieren Sie es selbst aus

var carname = 'Porsche 911';

Beispiel

Sie können Anführungszeichen in der Zeichenkette verwenden, solange sie nicht mit den Anführungszeichen um die Zeichenkette passen:
var answer = \"It's good to see you again!\";
var answer = \"He is called 'Bill'\";

Probieren Sie es selbst aus

var answer = 'He is called \"Bill\"';

Zeichenkettengröße integrierte Eigenschaft Kann die Länge der ZeichenketteLänge:

Beispiel

var txt = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
var sln = txt.length;

Probieren Sie es selbst aus

Spezielle Zeichen

Da Zeichenketten von Anführungszeichen umgeben sein müssen, versteht JavaScript diesen String falsch:

var y = "China ist die Heimat des Porzellans, daher china ist" China (China)"同名.";

Diese Zeichenkette wird in "China ist die Heimat der Porzellan, daher china ist" geschnitten.

Die Lösung dieses Problems besteht darin, \ Escapesequenz.

Der Backslash-Escapesequenzen wandelt spezielle Zeichen in Zeichenkette-Zeichen um:

Code Ergebnis Beschreibung
\' ' Single Anführungszeichen
\" " Doppelte Quotes
\\ \ Backslash

Beispiel

Sequenz \" Anfügen von doppelten Quotes in der Zeichenkette:

Beispiel

var x = "China ist die Heimat der Porzellan, daher ist china mit\"China (China)\" identisch."

Probieren Sie es selbst aus

Sequenz \' Anfugen von einfacher Quote in der Zeichenkette:

Beispiel

var x = 'It\'s good to see you again';

Probieren Sie es selbst aus

Sequenz \\ Backslash in der Zeichenkette einfügen:

Beispiel

var x = "Zeichen \\ wird als Backslash bezeichnet.";

Probieren Sie es selbst aus

Escape-Zeichen (\) können auch verwendet werden, um andere spezielle Zeichen in Strings einzufügen.

Andere sechs in JavaScript gültige Escape-Sequenzen:

Code Ergebnis
\b Rücktaste
\f Seitenwechsel
\n Neue Zeile
\r Return
\t Horizontaler Tabulator
\v Vertikaler Tabulator

Diese sechs Escape-Zeichen wurden ursprünglich entwickelt, um Schreibmaschinen, Telegraphie-Schreibmaschinen und Faxmaschinen zu steuern. Sie haben in HTML keine Bedeutung.

Lange Zeilen im Code

Für die beste Lesbarkeit vermeiden Programmierer in der Regel, dass jede Zeile mehr als 80 Zeichen enthält.

Wenn ein JavaScript-Befehl nicht auf eine Zeile passt, ist der beste Umbruchort nach einem Operator:

Beispiel

document.getElementById("demo").innerHTML =
"Hello Kitty.";

Probieren Sie es selbst aus

Sie können auchIn der ZeichenketteZeilenumbruch, durch einen Backslash erreicht:

Beispiel

document.getElementById("demo").innerHTML = "Hello \
Kitty!";

Probieren Sie es selbst aus

\ Diese Methode ist nicht Teil des ECMAScript (JavaScript)-Standards.

Einige Browser erlauben dies auch nicht \ Leerzeichen nach dem Zeichen.

Die sicherste Methode zum Umbruch langer Strings (aber etwas langsam) ist die Verwendung der String-Addition:

Beispiel

document.getElementById("demo").innerHTML = "Hello" + 
"Kitty!";

Probieren Sie es selbst aus

Sie können Zeilen nicht durch einen Backslash umbruchen:

Beispiel

document.getElementById("demo").innerHTML = \ 
"Hello Kitty!";

Probieren Sie es selbst aus

Strings können auch Objekte sein

Normalerweise sind JavaScript-Strings primitiv und werden durch Literale erstellt:

var firstName = "Bill"

Aber Strings können auch durch den Schlüsselwort new definiert als Objekt:

var firstName = new String("Bill")

Beispiel

var x = "Bill";
var y = new String("Bill");
// typeof x wird string zurückgeben
// typeof y wird object zurückgeben

Probieren Sie es selbst aus

Erstellen Sie keine Zeichenfolgen als Objekte. Es kann die Ausführungszeit verlangsamen.

new Schlüsselwörter können den Code komplexer machen. Es können auch unerwartete Ergebnisse entstehen:

Wenn Sie == Der Gleichheitsoperator, wenn gleiche Zeichenfolgen gleich sind:

Beispiel

var x = "Bill";             
var y = new String("Bill");
// (x == y) ist true, weil x und y den gleichen Wert haben

Probieren Sie es selbst aus

Wenn Sie === Der Operator, wenn gleiche Zeichenfolgen ungleich sind, weil === Der Operator muss sowohl Typ als auch Wert gleich sein.

Beispiel

var x = "Bill";             
var y = new String("Bill");
// (x === y) ist false, weil x und y verschiedene Typen haben (Zeichenfolge und Objekt)

Probieren Sie es selbst aus

Noch schlimmer. Objekte können nicht verglichen werden:

Beispiel

var x = new String("Bill");             
var y = new String("Bill");
// (x == y) ist false, weil x und y verschiedene Objekte sind

Probieren Sie es selbst aus

Beispiel

var x = new String("Bill");             
var y = new String("Bill");
// (x === y) ist false, weil x und y verschiedene Objekte sind

Probieren Sie es selbst aus

Bitte beachten Sie den Unterschied zwischen (x==y) und (x===y).

JavaScript-Objekte können nicht verglichen werden, der Vergleich zweier JavaScript wird immer false.