Rumah  >  Artikel  >  hujung hadapan web  >  Mengapa JavaScript Menganggap "1" 1 sebagai Rentetan dan "1" - 1 sebagai Nombor?

Mengapa JavaScript Menganggap "1" 1 sebagai Rentetan dan "1" - 1 sebagai Nombor?

DDD
DDDasal
2024-11-15 17:19:03678semak imbas

Why Does JavaScript Treat

Ketidaksamaan JavaScript dalam Pengendalian dan - Operator dengan Rentetan dan Nombor

Apabila bekerja dengan JavaScript, tingkah laku pelik mungkin timbul apabila menggunakan dan - operator pada campuran rentetan dan nombor. Mari kita mendalami soalan ini untuk merungkai logik asas.

Soalan:

Mengapa JavaScript menganggap "1" 1 sebagai rentetan dan "1" - 1 sebagai nombor?

Perbincangan:

Pertimbangkan contoh berikut:

console.log("1" + 1); // Outputs "11"
console.log("1" - 1); // Outputs 0

Baris pertama menggabungkan rentetan "1" dengan nombor 1, menghasilkan "11." Ini berlaku kerana biasanya digunakan untuk penggabungan rentetan. JavaScript menukar nombor secara automatik kepada rentetan untuk memudahkan tindakan ini.

Walau bagaimanapun, dalam baris kedua, JavaScript tidak boleh menolak rentetan. Untuk menyelesaikan masalah ini, ia menukar rentetan "1" kepada nombor, dengan berkesan menghasilkan 1 - 1, yang bersamaan dengan 0.

Pada dasarnya, kelakuan JavaScript bergantung pada sifat operasi yang dijalankan:

  • Penggabungan ( ): Jika sebarang operan ialah rentetan, semua operan ditukar kepada rentetan dan digabungkan.
  • Penolakan (- ): Rentetan tidak boleh ditolak, jadi mana-mana operan rentetan ditukar kepada nombor dahulu.

Atas ialah kandungan terperinci Mengapa JavaScript Menganggap "1" 1 sebagai Rentetan dan "1" - 1 sebagai Nombor?. 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