2015-11-24 41 views
1

下面的代码:数组原型澄清

var o ={}; 

console.log(Object.getPrototypeOf(o) == Object.prototype); // returns true as expected 

console.log(Object.getPrototypeOf(Array) == Array.prototype); // returns false why? 

可能有人请澄清第二个结果?

+1

因为'Array'不是数组的实例化的实例 – tomasbasham

回答

3

尝试

var a=[]; 
console.log(Object.getPrototypeOf(a) == Array.prototype); 

您正在使用的,而不是它的一个实例的Array类型本身。

4

因为阵列是不是一个“阵列”,但阵列 的原型,但是与本例中:

var a = []; 
console.log(Object.getPrototypeOf(a) == Array.prototype); 

它的工作原理