Menyemak Pembolehubah Tidak Ditakrifkan dalam JavaScript
Dalam JavaScript, terdapat pelbagai cara untuk menguji sama ada pembolehubah telah ditakrifkan. Satu kaedah biasa ialah menggunakan sintaks window.myVariable, tetapi ini boleh menjadi masalah kerana ia juga akan kembali benar untuk pembolehubah yang telah diisytiharkan tetapi tidak dimulakan.
Pendekatan lain ialah menggunakan typeof(myVariable) != " undefined", tetapi ini sensitif kepada potensi penggantian pembolehubah tidak ditentukan.
Untuk melakukan pemeriksaan yang lebih mantap, jenis operator boleh digunakan, memastikan nilai rentetan dikembalikan. Contohnya:
if (typeof myVar !== 'undefined')
Pendekatan ini memastikan pembolehubah sama ada tidak diisytiharkan atau mempunyai nilai yang tidak ditentukan. Walau bagaimanapun, adalah penting untuk ambil perhatian bahawa nilai palsu seperti rentetan palsu, 0 dan kosong tidak akan dianggap tidak ditentukan.
Satu lagi perangkap yang berpotensi dengan menggunakan if (myVariable) ialah ia boleh menimbulkan ralat dalam kes di mana pembolehubah tidak ditakrifkan atau mempunyai fungsi getter yang terdedah kepada ralat.
Untuk ujian yang lebih dipercayai, pertimbangkan untuk menggunakan operator in. Pendekatan ini akan menentukan sama ada pembolehubah telah diisytiharkan, tanpa mengira nilainya:
if ("myVariable" in window)
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Menyemak Pembolehubah Tidak Ditakrifkan dengan Amanah dalam JavaScript?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!