Rumah >hujung hadapan web >tutorial js >Adakah Null dalam JavaScript merupakan Objek atau Primitif, dan Bagaimanakah Ini Mempengaruhi Pemeriksaan Null?

Adakah Null dalam JavaScript merupakan Objek atau Primitif, dan Bagaimanakah Ini Mempengaruhi Pemeriksaan Null?

Patricia Arquette
Patricia Arquetteasal
2024-12-05 00:16:12777semak imbas

Is Null in JavaScript an Object or a Primitive, and How Does This Affect Null Checks?

Null: Objek atau Bukan?

Dalam JavaScript, nilai null adalah yang istimewa. Ia mewakili tugasan yang jelas tentang ketiadaan. Null ialah nilai primitif, tetapi ia juga dianggap sebagai objek. Perbezaan unik ini menimbulkan persoalan tentang sifatnya.

Menyemak Null: == vs !

Soalan pertama ialah sama ada menyemak null menggunakan == null adalah bersamaan dengan !objek. Jawapannya ya. Dwi-sama (==) melakukan paksaan jenis, bermakna ia cuba menukar kedua-dua operan kepada jenis yang sama sebelum perbandingan. Dalam kes ini, kedua-dua null dan undefined ditukar kepada boolean false, menjadikan semakan setara.

Null vs Undefined: The Difference

Satu lagi soalan biasa ialah perbezaan antara null dan undefined. Walaupun kedua-duanya mewakili ketiadaan, ia mempunyai makna yang berbeza:

  • Tidak ditentukan: Menunjukkan bahawa pembolehubah belum dimulakan atau diisytiharkan. Ia ialah keadaan awal semua pembolehubah yang diisytiharkan.
  • Nol: Mewakili penugasan sengaja tiada apa-apa. Ia digunakan untuk menetapkan nilai secara eksplisit kepada tiada, menunjukkan bahawa ia tidak diketahui atau tidak berkenaan.

Contoh:

Pertimbangkan kod berikut:

let name;  // undefined

if (name === undefined) {
  console.log("Name is undefined");
}

name = null;  // null

if (name === null) {
  console.log("Name is null");
}

Dalam contoh ini, nama pada mulanya tidak ditentukan. Apabila disemak dengan if (nama === undefined), syarat adalah benar kerana pembolehubah belum diberikan nilai. Selepas memberikan null kepada nama, keadaan if (name === null) juga menjadi benar kerana null mewakili ketiadaan.

Atas ialah kandungan terperinci Adakah Null dalam JavaScript merupakan Objek atau Primitif, dan Bagaimanakah Ini Mempengaruhi Pemeriksaan Null?. 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