Rumah  >  Artikel  >  hujung hadapan web  >  Analisis ringkas tentang perbezaan antara "==" dan "===" dalam kemahiran Javascript_javascript

Analisis ringkas tentang perbezaan antara "==" dan "===" dalam kemahiran Javascript_javascript

WBOY
WBOYasal
2016-05-16 16:24:521054semak imbas

Apabila saya menggunakan JavaScript sebelum ini, saya sering menghadapi penggunaan dua simbol == dan === untuk menentukan sama ada dua pembolehubah adalah sama. Walau bagaimanapun, perbezaan antara dua simbol ini belum disiasat. Hari ini saya menemui simbol === sekali lagi, jadi saya memutuskan untuk menyemak apakah perbezaan antara keduanya.

Terdapat dua pengendali perbandingan "==" dan "===" dalam Javascript, jadi apakah perbezaan antara mereka?

1. Untuk jenis asas seperti rentetan dan nombor, terdapat perbezaan antara == dan ===

1) Perbandingan antara jenis yang berbeza, == membandingkan "nilai yang ditukar kepada jenis yang sama" untuk melihat sama ada "nilai" adalah sama === Jika jenis berbeza, hasilnya akan menjadi tidak sama
2) Perbandingan jenis yang sama, perbandingan "nilai" langsung, hasilnya adalah sama

2. Untuk jenis lanjutan seperti Array dan Object, tiada perbezaan antara == dan ===

Apabila pembolehubah ditakrifkan sebagai Arrary dan pembolehubah ditakrifkan sebagai jenis Objek, tetapi nilainya adalah sama, hasil perbandingan == dan === adalah sama kerana ia adalah perbandingan "alamat penunjuk"

3. Terdapat perbezaan antara jenis asas dan jenis lanjutan, == dan ===

1) Untuk ==, tukar jenis lanjutan kepada jenis asas dan lakukan perbandingan "nilai"
2) Kerana jenisnya berbeza, maka hasil === adalah palsu

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