Heim > Web-Frontend > js-Tutorial > Warum führt das Hinzufügen von Zeichenfolgen in JavaScript zu einer Verkettung statt zu einer numerischen Addition?

Warum führt das Hinzufügen von Zeichenfolgen in JavaScript zu einer Verkettung statt zu einer numerischen Addition?

Mary-Kate Olsen
Freigeben: 2024-12-24 11:14:10
Original
392 Leute haben es durchsucht

Why Does Adding Strings in JavaScript Result in Concatenation Instead of Numerical Addition?

Auflösen einer unerwarteten Zeichenfolgenverkettung bei der numerischen Addition

Problem: Beim Versuch, zwei durch Zeichenfolgen dargestellte Zahlen zu addieren, ist das Ergebnis falsch, weil sie es sind verkettet anstatt summiert zu werden. Beispielsweise gibt 1 2 „12“ anstelle von 3 zurück.

Codeausschnitt:

var y = document.getElementById("txt1").value;
var z = document.getElementById("txt2").value;
var x = y + z;
Nach dem Login kopieren

Erklärung: Die Werte von y und z werden als Zeichenfolgen aus den HTML-Eingabeelementen abgerufen. Wenn diese Zeichenfolgen mit dem Operator „ “ hinzugefügt werden, behandelt JavaScript sie als Text und verkettet sie, anstatt eine mathematische Addition durchzuführen.

Lösung: Um dieses Problem zu beheben, müssen die Zeichenfolgen konvertiert werden zu Zahlen, bevor Sie die Addition durchführen. Dies kann erreicht werden, indem jeder Zeichenfolge der Operator „ “ vorangestellt wird.

var x = +y + +z;
Nach dem Login kopieren

In diesem modifizierten Code wird der Operator „ “ verwendet, um die Zeichenfolgen in Zahlen umzuwandeln, bevor sie addiert werden. Dadurch wird sichergestellt, dass 1 2 die korrekte Summe von 3 zurückgibt und nicht die verkettete Zeichenfolge „12“.

Das obige ist der detaillierte Inhalt vonWarum führt das Hinzufügen von Zeichenfolgen in JavaScript zu einer Verkettung statt zu einer numerischen Addition?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
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