Rumah >hujung hadapan web >tutorial js >Mengapa jQuery Menggunakan Kaedah Berbeza untuk Menyemak Pembolehubah Tidak Ditakrifkan dalam Skop Global dan Setempat?
Mengapa jQuery Membezakan Pemeriksaan Tidak Ditakrifkan untuk Global dan Setempat
Garis Panduan Gaya Teras jQuery menyediakan dua kaedah berbeza untuk mengesahkan sama ada pembolehubah ditakrifkan:
Mari kita terokai rasional di sebalik pendekatan jQuery.
Untuk pembolehubah yang tidak diisytiharkan, typeof foo mengembalikan "tidak ditentukan". Walau bagaimanapun, perbandingan identiti foo === undefined akan membawa kepada ralat "foo tidak ditakrifkan" kerana foo tidak wujud dalam masa jalan.
Sebaliknya, untuk pembolehubah tempatan (yang diisytiharkan secara eksplisit), tidak ralat seperti itu akan timbul. Oleh itu, jQuery menggunakan semakan identiti (pembolehubah === tidak ditentukan) untuk pembolehubah tempatan dan sifat tempatan objek. Pendekatan ini selamat digunakan kerana pembolehubah dan sifat yang diisytiharkan sentiasa ditakrifkan, walaupun ia tidak mempunyai nilai awal.
Walau bagaimanapun, apabila berurusan dengan pembolehubah global, jenis pembolehubah === "tidak ditentukan" digunakan sebaliknya. Ini kerana pembolehubah global mungkin atau mungkin tidak diisytiharkan, dan menggunakan pembolehubah === undefined akan mengakibatkan ralat masa jalan jika pembolehubah tidak diisytiharkan.
Atas ialah kandungan terperinci Mengapa jQuery Menggunakan Kaedah Berbeza untuk Menyemak Pembolehubah Tidak Ditakrifkan dalam Skop Global dan Setempat?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!