Rumah >hujung hadapan web >tutorial js >Mengapakah '1' 1 sama dengan '11' dalam JavaScript, tetapi '1' - 1 sama dengan 0?
Memahami Perbezaan Gabungan dan Penolakan dalam JavaScript
Dalam JavaScript, mengendalikan pengendali tambah ( ) dan tolak (-) antara rentetan dan nombor berbeza, sering membawa kepada kekeliruan. Untuk menjelaskan tingkah laku ini, mari kita teliti dua contoh:
console.log("1" + 1); // Output: "11" console.log("1" - 1); // Output: 0
Penggabungan Rentetan ( )
Apabila menggunakan operator tambah antara rentetan ("1") dan nombor (1), JavaScript melakukan penggabungan rentetan. Dalam kes ini, ia menukar nilai berangka kepada rentetan ("1") dan menambahkannya pada rentetan sedia ada ("1"), menghasilkan output "11".
Penolakan Numerik ( -)
Walau bagaimanapun, apabila menggunakan operator tolak, JavaScript mengutamakan operasi berangka. Memandangkan penolakan tidak boleh dilakukan pada rentetan, ia secara tersirat menukar "1" kedua (rentetan) kepada nombor sebelum melakukan penolakan. Oleh itu, JavaScript menolak 1 daripada angka 1, menghasilkan output 0.
Nota Tambahan:
Dalam JavaScript, operator tambah boleh dibebankan untuk melaksanakan sama ada penggabungan rentetan atau penambahan angka, bergantung pada jenis data operan. Walau bagaimanapun, operator tolak digunakan secara ketat untuk penolakan angka, oleh itu kelakuannya yang berbeza apabila bekerja dengan rentetan.
Atas ialah kandungan terperinci Mengapakah '1' 1 sama dengan '11' dalam JavaScript, tetapi '1' - 1 sama dengan 0?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!