Rumah >hujung hadapan web >tutorial js >Mengapa Menambah Rentetan dalam JavaScript Menghasilkan Penggabungan Daripada Penambahan Berangka?

Mengapa Menambah Rentetan dalam JavaScript Menghasilkan Penggabungan Daripada Penambahan Berangka?

Mary-Kate Olsen
Mary-Kate Olsenasal
2024-12-24 11:14:10397semak imbas

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

Menyelesaikan Penggabungan Rentetan Tidak Dijangka dalam Penambahan Berangka

Masalah: Apabila cuba menambah dua nombor yang diwakili oleh rentetan, hasilnya tidak betul kerana ia adalah bercantum bukannya dijumlahkan. Sebagai contoh, 1 2 mengembalikan "12" dan bukannya 3.

Coretan Kod:

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

Penjelasan: Nilai y dan z diambil semula sebagai rentetan daripada elemen input HTML. Apabila rentetan ini ditambahkan menggunakan operator ' ', JavaScript menganggapnya sebagai teks dan menggabungkannya dan bukannya melakukan penambahan matematik.

Penyelesaian: Untuk menyelesaikan isu ini, rentetan mesti ditukar kepada nombor sebelum melakukan penambahan. Ini boleh dicapai dengan menambahkan operator ' ' pada setiap rentetan.

var x = +y + +z;

Dalam kod yang diubah suai ini, operator ' ' digunakan untuk memaksa rentetan menjadi nombor sebelum ia ditambah bersama. Ini akan memastikan bahawa 1 2 mengembalikan jumlah 3 yang betul, bukannya rentetan gabungan "12".

Atas ialah kandungan terperinci Mengapa Menambah Rentetan dalam JavaScript Menghasilkan Penggabungan Daripada Penambahan Berangka?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn