Memahami Perbezaan Antara == dan === dalam JavaScript
Dalam JavaScript, pengendali perbandingan == dan === biasanya digunakan untuk memeriksa kesamarataan. Walau bagaimanapun, ia berbeza secara ketara.
Kesamaan (==)
Pengendali == melakukan perbandingan nilai selepas melakukan paksaan jenis. Ini bermakna ia menukar nilai kepada jenis yang sama sebelum membandingkannya. Akibatnya, nilai yang berbeza sifatnya tetapi mempunyai nilai berangka yang sama dianggap sama.
Kesaksamaan Tegas (===)
Sebaliknya, operator === melakukan perbandingan kesaksamaan yang ketat tanpa paksaan jenis. Ia menyemak sama ada nilai adalah sama dalam kedua-dua nilai dan jenis. Ini bermakna bahawa nilai jenis yang berbeza, walaupun nilai berangkanya sepadan, dianggap tidak sama rata.
Operator Perbandingan Lain
Selain == dan ===, JavaScript juga menyediakan operator perbandingan berikut:
Memahami Implikasi
Menggunakan operator == boleh membawa kepada hasil yang tidak dijangka apabila membandingkan nilai pelbagai jenis. Contohnya:
0 == false // true (value equality after type coercion) 1 == "1" // true (value equality after type coercion) null == undefined // true (value equality after type coercion)
Sebaliknya, operator === menyediakan semakan kesaksamaan yang lebih ketat, memastikan bahawa nilai adalah sama dalam kedua-dua nilai dan jenis:
0 === false // false (due to type mismatch) 1 === "1" // false (due to type mismatch) null === undefined // false (due to type mismatch)
Apabila untuk Menggunakan Operator Mana
Secara amnya, adalah disyorkan untuk menggunakan operator === untuk semakan kesaksamaan yang ketat dan untuk elakkan operator ==, yang boleh membawa kepada hasil yang tidak dijangka. Walau bagaimanapun, mungkin terdapat kes tertentu yang == boleh berguna, seperti semasa menyemak kebenaran atau membandingkan nilai yang diketahui daripada jenis yang sama.
Atas ialah kandungan terperinci Apakah Perbezaan Antara Operator `==` dan `===` JavaScript?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!