【每日一题】Array是Object类型么?
人生苦短,总需要一点仪式感。比如学前端~
Array是Object类型么
是,Array也是一种特殊的对象。
首先,使用typeof进行类型判断将会返回"object"
另外,我们可以从原型链的角度来证明:
var arr = [];
arr instanceof Array; // 输出 true
arr.constructor === Array; // 输出:true
/* 观察原型链继承 */
arr.__proto__.constructor; // 输出:ƒ Array() { [native code] }
arr.__proto__.__proto__.constructor; // 输出:ƒ Object() { [native code] }
arr.__proto__.__proto__.__proto__; // 输出null
由此可以看出:arr 的创建过程是:null --> Object --> Array --> arr
,所以说 Array 属于 Object。
tips
在JS中,引用类型值皆是对象类型
。数组、函数、日期、正则等都是。
更多原型链知识,请看该篇文章:《一张图带你搞懂Javascript原型链关系》
让我们一起携手同走前端路!
关注公众号回复【加群】即可
评论