Heim >Web-Frontend >Front-End-Fragen und Antworten >Warum sind Zeichenfolgen in Javascript unveränderlich?
In JavaScript ist der Wert einer Zeichenfolge unveränderlich, was bedeutet, dass er, sobald eine Zeichenfolge erstellt wurde, nicht geändert werden kann. Grund: Die Zeichenfolge selbst ist ein von der Sprache gekapselter Basistyp und der zugrunde liegende Typ ist immer noch ein Objekt. Der Inhalt des Objekts kann seit seiner Erstellung nicht geändert werden, sodass die Zeichenfolge unverändert bleibt.
Die Betriebsumgebung dieses Tutorials: Windows 7-System, JavaScript-Version 1.8.5, Dell G3-Computer.
In JavaScript ist der Wert einer Zeichenfolge unveränderlich, was bedeutet, dass die Zeichenfolge nach ihrer Erstellung nicht mehr geändert werden kann.
Zum Beispiel ändert der folgende Code:
var myStr = "Bob"; myStr[0] = "J";
den Wert der Variablen myStr nicht in „Job“, da die Variable myStr unveränderlich ist.
Beachten Sie, dass dies nicht bedeutet, dass myStr niemals geändert werden kann, sondern nur, dass die einzelnen Zeichen des String-Literals nicht geändert werden können.
Die einzige Möglichkeit, myStr zu ändern, besteht darin, ihm einen Wert zuzuweisen, etwa so:
var myStr = "Bob"; myStr = "Job";
Warum sind Strings in js unveränderlich?
Tatsächlich ist der String selbst ein von der Sprache gekapselter Basistyp (Ausgabe über den systemeigenen String-Konstruktor neu). Die unterste Ebene ist immer noch ein Objekt, kein einfacher Datentyp. Der Inhalt dieses Objekts kann seit seiner Erstellung nicht geändert werden, sodass die Zeichenfolge unverändert bleibt. Operationen wie
+ generieren nur neue String-Objekte und die ursprünglichen String-Objekte ändern sich nicht. Wenn auf ein String-Objekt nicht mehr verwiesen wird, wird es von GC recycelt.
【Verwandte Empfehlungen: Javascript-Lern-Tutorial】
Das obige ist der detaillierte Inhalt vonWarum sind Zeichenfolgen in Javascript unveränderlich?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!