===: Ia juga digunakan untuk menilai sama ada dua nilai adalah sama, tetapi tidak ada proses penukaran tersirat, tetapi penghakiman langsung, jadi ia juga dipanggil kesamaan/kongruen mutlak.
1 Untuk jenis asas seperti rentetan dan nombor, terdapat perbezaan antara == dan ===
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
Perbandingan jenis yang sama, perbandingan "nilai" langsung, hasilnya akan sama
2 Untuk jenis lanjutan seperti Array dan Object, tiada beza antara == dan ===
Lakukan perbandingan "alamat penunjuk"
3 Terdapat perbezaan antara jenis asas dan jenis lanjutan, == dan ===
Untuk ==, tukar jenis lanjutan kepada jenis asas dan lakukan perbandingan "nilai"
'==': Tentukan sama ada nilai adalah sama, bukan jenisnya
var a = 1,
b = '1';
return a == b; //返回true
'===': pertimbangan yang tepat, bukan sahaja nilai tetapi juga jenis
var a = 1,
b = '1';
return a === b; //返回false
1 Untuk jenis asas seperti rentetan dan nombor, terdapat perbezaan antara == dan ===
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
Perbandingan jenis yang sama, perbandingan "nilai" langsung, hasilnya akan sama
2 Untuk jenis lanjutan seperti Array dan Object, tiada perbezaan antara == dan === untuk perbandingan "alamat penunjuk"
.
3 Terdapat perbezaan antara jenis asas dan jenis lanjutan, == dan ===
Untuk ==, tukar jenis lanjutan kepada jenis asas dan lakukan perbandingan "nilai"
== akan melakukan penukaran jenis data tersirat, === tidak, ia hanya membandingkan sama ada kedua-dua belah pihak benar-benar sama http://www.softwhy.com/articl...
=
: operasi tugasan==
: Digunakan untuk menilai sama ada dua nilai adalah sama, tetapi penghakiman di sini adalah hasil daripada penukaran tersirat. Contohnya===
: Ia juga digunakan untuk menilai sama ada dua nilai adalah sama, tetapi tidak ada proses penukaran tersirat, tetapi penghakiman langsung, jadi ia juga dipanggil kesamaan/kongruen mutlak.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
Perbandingan jenis yang sama, perbandingan "nilai" langsung, hasilnya akan sama
Lakukan perbandingan "alamat penunjuk"
Untuk ==, tukar jenis lanjutan kepada jenis asas dan lakukan perbandingan "nilai"
Sebab jenis berbeza, hasil === adalah palsu
'=': bermaksud tugasan,
'==': Tentukan sama ada nilai adalah sama, bukan jenisnya
'===': pertimbangan yang tepat, bukan sahaja nilai tetapi juga jenis
= ialah pengendali tugasan
== dan === ialah pengendali perbandingan
== akan melakukan penukaran jenis data tersirat, === tidak, ia hanya membandingkan sama ada kedua-dua belah pihak benar-benar sama
http://www.softwhy.com/articl...
"=" digunakan untuk menetapkan nilai, menetapkan nilai secara langsung.
Pengendali "==" akan menukar dahulu dan kemudian beroperasi.
"==="Sama sekali, sama hanya jika nilai dan jenis di kedua-dua belah adalah sama.
Gunakan sebanyak mungkin === ==Mudah ada masalah