Mengapa [1,2] [3,4] Menghasilkan "1,23,4" dalam JavaScript?
Apabila mencuba untuk menambah elemen dua tatasusunan, seperti [1,2] dan [3,4], menggunakan operator dalam JavaScript, anda mungkin menemui hasil yang tidak dijangka: "1,23,4". Keputusan ini berlaku kerana operator berkelakuan berbeza dengan tatasusunan berbanding dengan jenis data lain.
Peranan Operator
Operator dalam JavaScript mempunyai beberapa kegunaan berbeza bergantung pada jenis operan yang terlibat. Apabila digunakan dengan nombor, ia melakukan penambahan. Dengan rentetan, ia menggabungkannya. Walau bagaimanapun, apabila digunakan dengan tatasusunan, ia tidak melakukan operasi matematik atau gabungan.
Paksa Jenis JavaScript
Daripada melaksanakan operasi yang ditentukan untuk tatasusunan, JavaScript memaksa, atau menukar, tatasusunan kepada rentetan sebelum melaksanakan operasi. Ini dikenali sebagai paksaan jenis. Dalam kes [1,2] [3,4], tatasusunan ditukar kepada rentetan "1,2" dan "3,4" sebelum operasi penggabungan.
Hasilnya
Selepas paksaan jenis, operator hanya menggabungkan dua rentetan, menghasilkan "1,23,4". Ini kerana tiada pemisah koma dalam tatasusunan asal dan JavaScript tidak menambah sebarang jarak semasa menggabungkan rentetan.
Nota Tambahan
Adalah penting untuk ambil perhatian bahawa operator tidak berfungsi dengan cara yang sama untuk semua objek dalam JavaScript. Sebagai contoh, dengan objek Nombor dan Boolean, ia menjalankan operasi penambahan. Walau bagaimanapun, dengan objek tersuai, tingkah laku mungkin berbeza-beza bergantung pada pelaksanaan kaedah valueOf dan toString.
Atas ialah kandungan terperinci Mengapa menambah dua tatasusunan dalam JavaScript menggunakan operator menghasilkan rentetan dan bukannya tatasusunan baharu?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!