Menyemak Pembolehubah Pembolehubah dalam JavaScript
Apabila berurusan dengan pembolehubah JavaScript, adalah penting untuk mengetahui sama ada pembolehubah tersebut telah dimulakan. Beberapa kaedah boleh melakukan semakan ini, setiap satu dengan kebaikan dan keburukan.
1. jika (elem) atau !elem
Walaupun kaedah ini nampak mudah, ia tidak selalu boleh dipercayai. Dalam JavaScript, banyak nilai adalah "palsu", bermakna nilai itu dinilai palsu dalam konteks Boolean. Ini termasuk 0, null, NaN, rentetan kosong dan palsu. Oleh itu, menggunakan kaedah ini boleh membawa kepada keputusan yang salah jika pembolehubah memegang mana-mana nilai ini.
2. if (typeof elem !== 'undefined')
Kaedah ini menggunakan operator typeof untuk menyemak sama ada pembolehubah itu wujud. Ia mengandaikan bahawa pembolehubah yang tidak ditentukan tidak wujud. Walau bagaimanapun, terdapat kaveat: pembolehubah yang diisytiharkan menggunakan var, let, atau const dinaikkan ke bahagian atas skopnya, tetapi ia tidak dimulakan pada masa itu. Akibatnya, jika anda mengakses pembolehubah sebelum ia diberikan nilai, operator jenis akan mengembalikan "tidak ditentukan", walaupun pembolehubah itu telah diisytiharkan secara teknikal.
3. if (elem != null)
Kaedah ini menyemak sama ada pembolehubah itu bukan nol. Null dalam JavaScript mewakili ketiadaan nilai, jadi ia sering digunakan untuk menunjukkan bahawa pembolehubah belum dimulakan. Walau bagaimanapun, ada kemungkinan pembolehubah mungkin mengekalkan null sebagai nilai yang sah, yang membawa kepada negatif palsu dengan kaedah ini.
Kesimpulannya, kaedah yang paling boleh dipercayai untuk menyemak sama ada pembolehubah wujud dalam JavaScript adalah menggunakan perkara berikut:
if (typeof variable !== 'undefined') { // the variable is defined }
Kaedah ini mengambil kira kedua-dua pembolehubah dan pembolehubah yang diisytiharkan tetapi tidak dimulakan dengan tepat yang telah ditetapkan batal.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Memeriksa Permulaan Pembolehubah dengan Amanah dalam JavaScript?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!