Menurut dokumentasi MDN tentangundefined
:
Di browser modern (JavaScript 1.8.5 / Firefox 4+), undefined adalah properti yang tidak dapat dikonfigurasi, tidak dapat ditulis sesuai dengan spesifikasi ECMAScript 5. Bahkan ketika ini bukan masalahnya, hindari menimpanya.
Salah satu atribut properti yang tidak terdefinisi adalah yang tidak dapat ditulis.
Tetapi jika saya lakukan:
var undefined = 'hello';
var test = undefined;
console.log(typeof test);
//string
Apakah itu berarti saya dapat menimpa nilai undefined
? Apa yang terjadi jika seseorang melakukan itu? Haruskah JavaScript memperingatkan tentang itu?
typeof undefined
kembali "undefined"
dalam keadaan normal.
"undefined"
adalah sebuah string. Pertanyaannya bukan menanyakan apa yang typeof (typeof undefined)
dievaluasi. Ia bertanya apa yang typeof undefined
dievaluasi. Ia kembali "undefined"
, bukan"string"
typeof ______
adalah ekspresi yang mengevaluasi string yang berisi tipe ______
. Anda salah mengerti pertanyaan itu.
typeof test === "undefined"
)