题目如下:
js变量不可当作对象使用的是?
1.Date
2.false
3.null
4.undefined
5.NaN
不是很理解这题的意思,求助。
迷茫2017-04-11 09:44:54
你自己typeof
一下看看结果:
console.log(typeof Date);//function
console.log(typeof false);//boolean
console.log(typeof null);//object
console.log(typeof undefined);//undefined
console.log(typeof NaN);//number
其中function
也是一种特殊的object
。剩下的boolean
, number
, undefined
是原始数据类型。
当然javascript里number
也有对象类型Number
,boolean
也有对象类型Boolean
。
题目中“js变量不可当作对象使用”这话有点难理解,我也不确定在考什么。期待神人解答。
阿神2017-04-11 09:44:54
如果这道题目是考察 JS 基本类型,那么如 @leftstick 所述,只有 Date 是一个对象。
如果这道题进一步考察包装类型,那么 false NaN 有其对应的包装类型 Boolean 和 Number,不过包装类型并不能当作正常对象来使用,对上述变量的属性赋值操作都是无意义的。
所以这道题的正确解答是:这个面试者没什么水平。
巴扎黑2017-04-11 09:44:54
undefined
因为:
new Date()
new Boolean()
null是一种特殊的object ; new Object()
NaN 是一种特殊的Number ; new Number()
阿神2017-04-11 09:44:54
JavaScript 中所有变量都可以当作对象使用,除了两个例外 null 和 undefined。
具体查看:http://bonsaiden.github.io/Ja...