Mari kita bicara tentang tidak terdefinisi terlebih dahulu:
Variabel dalam JavaScript adalah tipe lemah, jadi ketika mendeklarasikan variabel, Anda hanya perlu menggunakan kata kunci VAR. If it is a strongly typed language like C, if the initial value is not specified when declaring a variable, it will be given a default value, such as the default value of the int variable is 0. But in weak-type languages like Javascript, there is no way to determine what kind of default value should be given to such a variable, for example, I declare a variable
var v1;
Apakah itu memberinya salah atau 0, atau ''?
Karena tidak ada jenis, tidak mungkin untuk ditentukan. Dalam JavaScript, untuk variabel ini yang tidak memiliki nilai awal demi kehidupan, berikan tidak terdefinisi. Namun, premisnya adalah bahwa variabel ini harus dinyatakan, dan kesalahan akan terjadi jika tidak dinyatakan untuk pengidentifikasi. Lihat kode di bawah ini.
vo = "vo"; // Buat variabel global tanpa menggunakan kata kunci var. Jika Anda tidak menetapkan nilai, kesalahan akan dilaporkan. Seperti yang ditunjukkan di berikut ini
// v1; // akan ada kesalahan
var v2; // tidak disukai
var v3 = ""; // null
waspada (vo);
// waspada (v1); //
peringatan (v2);
peringatan (v3);
Mari Bicara Tentang Null:
JavaScript memiliki beberapa tipe dasar, angka, string, boolean, dan objek. Ada dua situasi untuk variabel tipe objek. Salah satunya adalah bahwa itu adalah instance dari suatu objek, dan yang lainnya adalah nol referensi kosong. Teman-teman yang akrab dengan bahasa yang berorientasi objek seperti Java harus mudah dipahami. Untuk kedua kasus, jenisnya adalah objek. Hanya ketika variabel dalam JavaScript ditugaskan untuk mereka
Ini akan menentukan jenisnya, seperti di bawah ini.
Kodenya adalah sebagai berikut:
var v1 = 1; var v2 = true; peringatan (tipe v1); // Nomor Peringatan (TypeOf V2); // boolean v2 = tanggal baru (); Peringatan (TypeOf V2); // objek v2 = "str"; Peringatan (TypeOf V2); // string v2 = null; Peringatan (TypeOf V2); //obyek
Seperti yang Anda lihat, NULL mewakili nilai tipe objek khusus dalam JavaScript, yang digunakan untuk mewakili konsep referensi nol. Jika pengidentifikasi dinyatakan sebagai tipe objek, tetapi tidak diberi contoh untuk saat ini, maka dapat diinisialisasi sebagai nol untuk digunakan nanti.
Ini tidak selalu benar. Sederhananya, untuk semua variabel, selama nilai awal tidak ditentukan setelah deklarasi, itu tidak ditentukan. Jika tipe objek digunakan untuk mewakili konsep referensi nol, itu diekspresikan oleh nol.
Berikut beberapa tambahan:
NULL: berarti tidak ada nilai;
Tidak ditentukan: Menunjukkan variabel yang tidak dideklarasikan, atau variabel yang telah dinyatakan tetapi belum ditetapkan, atau properti objek yang tidak ada. Operator == memperlakukan keduanya sama. Jika Anda ingin membedakan keduanya, gunakan operator === atau tipe dari. Keduanya disertakan dengan if (! Object) {}.