Rumah >hujung hadapan web >tutorial js >JavaScript Sama dengan: JavaScript '===' vs '==' Operator Perbandingan

JavaScript Sama dengan: JavaScript '===' vs '==' Operator Perbandingan

Susan Sarandon
Susan Sarandonasal
2024-10-18 06:24:30274semak imbas

Dalam JavaScript, pengendali kesamaan "==" dan "===" digunakan untuk membandingkan dua nilai, tetapi ia berfungsi secara berbeza dari segi cara ia mengendalikan jenis data. Berikut ialah penjelasan ringkas:

1. == (Kesaksamaan Longgar):

JavaScript equals atau operator kesamaan longgar ( == ) menyemak sama ada dua pembolehubah atau nilai adalah sama. Ia kembali benar jika dua nilai mempunyai nilai yang sama, walaupun kedua-duanya daripada jenis yang berbeza. Sebaliknya, ia mengembalikan palsu jika nilainya tidak mempunyai nilai yang sama.

JavaScript Equals: JavaScript ‘===’ vs ‘==’Comparison Operator

Di sini, JavaScript menukar rentetan '1' kepada nombor 1 dan kemudian membandingkannya, jadi ia kembali benar.

  • Apa yang dilakukan: Ia menyemak sama ada dua nilai adalah sama, tetapi mengabaikan jenis data.
  • Penukaran jenis (paksaan): JavaScript secara automatik menukar satu atau kedua-dua nilai kepada jenis yang sama sebelum membandingkannya.

Contoh Lain:

i). 0 == false adalah benar (kerana false ditukar kepada 0)
ii). null == undefined adalah benar (mereka dianggap sama rata)

Masalah: Penukaran jenis automatik ini kadangkala boleh membawa kepada hasil yang tidak dijangka, jadi secara umumnya ia dianggap kurang boleh dipercayai.

2. === (Kesaksamaan Tegas):

Pengendali kesamaan ketat (===) menyemak sama ada dua operannya adalah sama, mengembalikan hasil Boolean. Berbeza dengan pengendali kesaksamaan, pengendali kesaksamaan yang ketat sentiasa menganggap operan pelbagai jenis adalah berbeza.

JavaScript Equals: JavaScript ‘===’ vs ‘==’Comparison Operator

Di sini, JavaScript tidak menukar rentetan '1' kepada nombor. Memandangkan 1 ialah nombor dan '1' ialah rentetan, ia mengembalikan palsu.

  • Apa yang dilakukannya: Ia menyemak sama ada dua nilai adalah betul-betul sama, termasuk kedua-dua nilai dan jenis data.
  • Tiada penukaran Jenis: Ia tidak melakukan penukaran jenis; jenis mesti sepadan untuk perbandingan kembali benar.

Contoh Lain:

i). 0 == false ialah false (kerana 0 ialah nombor dan false ialah boolean)
ii). null == undefined adalah palsu (ia adalah daripada jenis yang berbeza)

Ringkasan:

  • == (kesamaan longgar) membandingkan nilai selepas menukarnya kepada jenis yang sama.

  • === (persamaan ketat) membandingkan nilai tanpa sebarang penukaran jenis.

Atas ialah kandungan terperinci JavaScript Sama dengan: JavaScript '===' vs '==' Operator Perbandingan. 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