老师,有个问题
来源:4-1 用new调用函数的四步走
saltedfishman
2020-10-19 22:16:51
Object.prototype.age = 15;
let a = [];
console.log(a.age) //15
let b = {};
console.log(b.age) // 15
console.log(b.__proto__ == a.__proto__) //false
我定义了一个数组a,为什么他能继承到对象的原型上的属性。
然后,我又创建了一个对象b,b能继承到对象原型上的属性,但是为什么a和b原型却不相等。
在这里输入代码,可通过选择【代码语言】突出显示
1回答
同学你好,对象和数组的__proto__ 的指向是不同的。数组a的__proto__ 指向的是数组的原型,数组原型的__proto__指向对象的原型。对象b的__proto__ 指向的对象的原型,因此a.__proto__.__proto__ == b.__proto__的结果才为true
相似问题