Rumah > hujung hadapan web > tutorial js > Mengapakah JavaScript mengembalikan \'1,23,4\' apabila menambah tatasusunan dengan pengendali?

Mengapakah JavaScript mengembalikan \'1,23,4\' apabila menambah tatasusunan dengan pengendali?

DDD
Lepaskan: 2024-10-28 17:20:02
asal
650 orang telah melayarinya

Why does JavaScript return

Mengapa JavaScript Mengembalikan "1,23,4" Apabila Menambah Array [1,2] kepada [3,4]?

Apabila cuba menambah elemen dua tatasusunan menggunakan operator, hasil yang tidak dijangka mungkin timbul, seperti yang digambarkan oleh coretan kod berikut:

[1,2] + [3,4]
Salin selepas log masuk

Ungkapan ini mengembalikan "1,23,4" dan bukannya "[1,2,3,4] ".

Memahami Isu

Pengendali tidak ditakrifkan secara khusus untuk tatasusunan dalam JavaScript. Sebaliknya, apabila menambah tatasusunan, Javascript melakukan langkah berikut:

  1. Menukar kedua-dua tatasusunan kepada rentetan.
  2. Menggabungkan rentetan yang terhasil, menghasilkan senarai elemen yang dipisahkan koma.

Membetulkan Gelagat

Untuk menambah elemen dua tatasusunan dengan betul, gunakan operator hamparan dan bukannya operator:

[1,2, ...[3,4]] // [1,2,3,4]
Salin selepas log masuk

Ikhtisar Gelagat Operator

Tingkah laku pengendali berbeza-beza bergantung pada jenis operan yang terlibat:

Operand Types Result Type
undefined, null, boolean Number
number Number
string String
object String (except for certain objects like Number and Boolean, where the result may vary depending on the implementation)

Rujuk jadual yang disediakan atau jsfiddle yang dirujuk untuk mendapatkan gambaran keseluruhan lengkap jenis hasil merentas pelbagai gabungan operan.

Atas ialah kandungan terperinci Mengapakah JavaScript mengembalikan \'1,23,4\' apabila menambah tatasusunan dengan pengendali?. 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
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan