在现代浏览器(JavaScript 1.8.5 / Firefox 4+)中,根据ECMAScript 5规范,undefined是不可配置的,不可写的属性。即使不是这种情况,也请避免覆盖它。
undefined的属性属性之一是不可写的。
但是,如果我这样做:
var undefined = 'hello';
var test = undefined;
console.log(typeof test);
//string
这是否意味着我可以覆盖的值undefined?如果有人这样做会怎样?JavaScript是否应该对此发出警告?
typeof undefined返回"undefined"。
"undefined"是一个字符串。问题不在于要typeof (typeof undefined)评估什么。它问什么typeof undefined评估。它返回"undefined",而不是"string"
typeof ______是一个表达式,其结果为包含的类型的字符串______。您误解了这个问题。
typeof test === "undefined")