Rumah > hujung hadapan web > tutorial js > Mengapa JavaScript Bercantum Daripada Menambah dengan Operator Plus ( )?

Mengapa JavaScript Bercantum Daripada Menambah dengan Operator Plus ( )?

Linda Hamilton
Lepaskan: 2024-10-28 23:39:30
asal
914 orang telah melayarinya

Why Does JavaScript Concatenate Instead of Adding with the Plus ( ) Operator?

Penggabungan Berbanding Penjumlahan dengan Operator Tambah ( ) dalam JavaScript

Isu biasa yang dihadapi dalam JavaScript ialah penggabungan pembolehubah yang tidak dijangka dan bukannya pembolehubah mereka penjumlahan yang dimaksudkan apabila menggunakan operator tambah (). Sebagai contoh, apabila kod berikut dilaksanakan, andaikan i dimulakan kepada 1:

divID = "question-" + i+1;
Salin selepas log masuk

Hasil yang diperoleh ialah "soalan-11" dan bukannya "soalan-2".

Ini fenomena berlaku kerana pengendali tambah ( ) mengendalikan kedua-dua penggabungan dan penambahan. Apabila digunakan pada jenis operan yang berbeza, pengendali mengutamakan penyatuan jika satu operan ialah rentetan. Oleh itu, operasi diproses dari kiri ke kanan:

  1. "soalan-" i: Memandangkan "soalan-" ialah rentetan, penggabungan berlaku, menghasilkan "soalan-1".
  2. "soalan-1" 1: Sekali lagi, penggabungan berlaku disebabkan oleh operan rentetan, menghasilkan "soalan-11".

Untuk mendapatkan penjumlahan yang diingini, sertakan ungkapan angka dalam kurungan:

var divID = "question-" + (i+1);
Salin selepas log masuk

Ini memastikan penambahan i dan 1 dilakukan terlebih dahulu, dengan hasil (2) kemudian digabungkan dengan "soalan-". Hasilnya ialah "soalan-2" seperti yang dimaksudkan.

Tingkah laku ini lazim dalam pelbagai bahasa pengaturcaraan, bukan hanya JavaScript. Adalah penting untuk diingat bahawa susunan operasi dilaksanakan adalah penting, terutamanya apabila berurusan dengan pelbagai jenis operan dan pengendali. Menggunakan kurungan secara jelas mengawal susunan penilaian, menghalang keputusan yang tidak dijangka.

Atas ialah kandungan terperinci Mengapa JavaScript Bercantum Daripada Menambah dengan Operator Plus ( )?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan