Setiap kali ada yang menyebutkan pengujian terhadap undefined
, itu menunjukkan bahwa undefined
itu bukan kata kunci sehingga dapat diatur ke"hello"
, jadi Anda harus menggunakan typeof x == "undefined"
sebagai gantinya. Ini tampak konyol bagi saya. Tidak ada yang akan pernah melakukan itu, dan jika mereka melakukannya, itu akan menjadi alasan yang cukup untuk tidak pernah menggunakan kode apa pun yang mereka tulis ... bukan?
Saya menemukan satu contoh dari seseorang yang secara tidak sengaja mengatur undefined
ke null
, dan ini diberikan sebagai alasan untuk menghindari asumsi yang undefined
tidak ditimpa. Tetapi jika mereka melakukan itu, bug tidak akan terdeteksi, dan saya gagal untuk melihat bagaimana itu lebih baik.
Di C ++ semua orang sangat sadar bahwa itu legal untuk mengatakannya #define true false
, tetapi tidak ada yang menyarankan Anda menghindari true
dan menggunakan 0 == 0
sebagai gantinya. Anda hanya berasumsi bahwa tidak ada orang yang cukup brengsek untuk melakukan itu, dan jika mereka melakukannya, jangan pernah mempercayai kode mereka lagi.
Pernahkah ini benar-benar menggigit seseorang di mana orang lain ditugaskan undefined
(dengan sengaja) dan itu memecahkan kode Anda, atau apakah ini lebih merupakan ancaman hipotetis? Saya bersedia mengambil kesempatan saya untuk membuat kode saya sedikit lebih mudah dibaca. Apakah ini ide yang buruk?
Untuk mengulangi, saya tidak menanyakan cara melindungi dari penetapan ulang yang tidak ditentukan. Saya telah melihat trik itu ditulis 100 kali. Saya bertanya betapa berbahayanya tidak menggunakan trik-trik itu.