js menentukan tipe yang tidak terdefinisi
Hari ini, gunakan showModalDialog untuk membuka halaman dan mengembalikan nilainya. Ketika halaman terbuka mengklik tombol tutup atau langsung mengklik tombol tutup di browser, nilai yang dikembalikan tidak ditentukan.
Jadi buatlah penilaian Anda sendiri
var reValue=window.showModalDialog("","","");
jika (reValue== tidak ditentukan){
peringatan("tidak terdefinisi");
}
Saya menemukan bahwa saya tidak tahu, jadi saya akhirnya memeriksa informasinya dan perlu menggunakan typeof.
metode:
if (typeof(reValue) == "tidak terdefinisi") {
peringatan("tidak terdefinisi");
}
typeof mengembalikan string, ada enam kemungkinan: "angka", "string", "boolean", "objek", "fungsi", "tidak terdefinisi"
Perbedaan antara tidak terdefinisi, null dan NaN di js
1.Jenis analisis:
Ada 5 tipe data di js, antara lain undefinisi, boolean, number, string, dan object. 4 tipe pertama adalah tipe primitif, dan tipe kelima adalah tipe referensi.
var a1;
var a2 = benar;
var a3 = 1;
var a4 = "Halo";
var a5 = Objek baru();
var a6 = nol;
var a7 = Tidak;
var a8 = tidak terdefinisi;
peringatan(tipe a); //tampilkan "tidak terdefinisi"
peringatan(tipe a1); //Tampilkan "tidak terdefinisi"
peringatan(tipe a2); //Menampilkan "boolean"
peringatan(tipe a3); //Tampilkan "angka"
peringatan(tipe a4); //Menampilkan "string"
alert(typeof a5); //Menampilkan "objek"
alert(typeof a6); //Menampilkan "objek"
peringatan(tipe a7); //Tampilkan "angka"
peringatan(typeof a8); //Tampilkan "tidak terdefinisi"
Dari kode di atas kita dapat melihat bahwa nilai yang tidak ditentukan dan nilai yang tidak ditetapkan adalah nilai yang tidak ditentukan, null adalah objek khusus, dan NaN adalah angka khusus.
2. Operasi perbandingan
var a1; //Nilai a1 tidak ditentukan
var a2 = nol;
var a3 = Tidak;
peringatan(a1 == a2); //tampilkan "benar"
peringatan(a1 != a2); //Tampilkan "salah"
peringatan(a1 == a3); //Tampilkan "salah"
peringatan(a1 != a3); //Tampilkan "benar"
peringatan(a2 == a3); //Tampilkan "salah"
peringatan(a2 != a3); //Tampilkan "benar"
peringatan(a3 == a3); //Tampilkan "salah"
peringatan(a3 != a3); //Tampilkan "benar"
Dari kode di atas, kita dapat menarik kesimpulan: (1) tidak terdefinisi dan nol adalah sama; (2) NaN tidak sama dengan nilai apa pun, juga tidak sama dengan nilai itu sendiri.
Properti JavaScript tidak terdefinisi
Definisi dan penggunaan
Atribut undefinisi digunakan untuk menyimpan nilai JavaScript yang tidak terdefinisi.
tata bahasa
belum diartikan
menjelaskan
Anda tidak dapat menggunakan perulangan for/in untuk menghitung properti yang tidak ditentukan, dan Anda juga tidak dapat menggunakan operator delete untuk menghapusnya.
undefinisi bukan sebuah konstanta dan dapat diatur ke nilai lain.
Undefinisi juga akan dikembalikan ketika mencoba membaca properti objek yang tidak ada.
Tip dan Catatan
Tip: Anda hanya dapat menggunakan operator === untuk menguji apakah suatu nilai tidak terdefinisi, karena operator == menganggap nilai yang tidak terdefinisi setara dengan nol.
Catatan: null berarti tidak ada nilai, sedangkan undefinisi berarti variabel yang tidak dideklarasikan, variabel yang sudah dideklarasikan tetapi tidak diberi nilai, atau properti objek yang tidak ada.
Contoh
Dalam contoh ini, kita akan mendeteksi bahwa salah satu dari dua variabel tidak terdefinisi:
<skrip tipe="teks/javascript">
var t1=""
vart2
if (t1===tidak terdefinisi) {document.write("t1 tidak terdefinisi")}
if (t2===tidak terdefinisi) {document.write("t2 tidak terdefinisi")}
</skrip>
Keluaran:
t2 tidak terdefinisi