Heim > Web-Frontend > js-Tutorial > Warum ändert meine JavaScript-Methode „replace()' meinen String nicht?

Warum ändert meine JavaScript-Methode „replace()' meinen String nicht?

Mary-Kate Olsen
Freigeben: 2024-12-31 16:04:17
Original
606 Leute haben es durchsucht

Why Doesn't My JavaScript `replace()` Method Change My String?

Die Methode „replace()“ in Strings verstehen

In der Programmierung können Sie mit der Methode „replace()“ einen bestimmten Teilstring durch einen anderen ersetzen eine gegebene Zeichenfolge. Kürzlich stieß ein Benutzer auf ein Problem, als er versuchte, Anführungszeichen und registrierte Symbole durch ihre regulären Gegenstücke zu ersetzen.

Der Benutzer verwendete den folgenden Code:

str.replace(/[“”]/g, '"');
str.replace(/[‘’]/g, "'");
Nach dem Login kopieren

Dieser Code konnte jedoch nicht generiert werden das gewünschte Ergebnis. Dies liegt daran, dass Zeichenfolgen in JavaScript unveränderlich sind. Die Methode replace() generiert eine neue Zeichenfolge und lässt die ursprüngliche Zeichenfolge unverändert.

Lösung:

Um die Anführungszeichen und Symbole korrekt zu ersetzen, sollte der Code geändert werden wie folgt:

str = str.replace(/[“”]/g, '"');
str = str.replace(/[‘’]/g, "'");
Nach dem Login kopieren

Alternativ kann eine einzelne Anweisung das gleiche Ergebnis erzielen:

str = str.replace(/[“”]/g, '"').replace(/[‘’]/g,"'");
Nach dem Login kopieren

Von Wenn Sie die neue Zeichenfolge wieder der ursprünglichen Variablen zuweisen, überschreiben Sie effektiv die ursprüngliche Zeichenfolge mit der geänderten.

Zusätzliche Hinweise:

Es ist wichtig zu beachten, dass der Code geht von der UTF-16-Kodierung für Zeichen aus. Wenn Ihre Zeichenfolgen Zeichen außerhalb der Basic Multilingual Plane enthalten (einschließlich Anführungszeichen und registrierter Symbole), müssen Sie möglicherweise das Unicode-Flag (u) angeben, um eine korrekte Übereinstimmung sicherzustellen.

Das obige ist der detaillierte Inhalt vonWarum ändert meine JavaScript-Methode „replace()' meinen String nicht?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
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
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage