Zgodnie z dokumentacją MDN na tematundefined
:
We współczesnych przeglądarkach (JavaScript 1.8.5 / Firefox 4+) undefined jest niemożliwą do skonfigurowania, niemożliwą do zapisu właściwością zgodnie ze specyfikacją ECMAScript 5. Nawet jeśli tak nie jest, unikaj przesłonięcia.
Jednym z atrybutów niezdefiniowanych jest to, że nie można zapisywać.
Ale jeśli to zrobię:
var undefined = 'hello';
var test = undefined;
console.log(typeof test);
//string
Czy to oznacza, że mogę zastąpić wartość undefined
? Co się stanie, jeśli ktoś to zrobi? Czy JavaScript powinien o tym ostrzegać?
typeof undefined
powraca "undefined"
w normalnych okolicznościach.
"undefined"
jest ciąg. Pytanie nie dotyczy tego, co typeof (typeof undefined)
ocenia. Pytanie o to, co typeof undefined
ocenia. Zwraca "undefined"
, a nie"string"
typeof ______
to wyrażenie, którego wynikiem jest łańcuch zawierający typ ______
. Nie rozumiesz pytania.
typeof test === "undefined"
)