我有:
var person = {
kind: 'person'
};
// create new object specifying the prototype as person
var zack = Object.create( person );
console.log( Object.getPrototypeOf(zack) );
输出:
对象{种类:“人”}
为什么不输出person
?
最佳答案
当您通过 Object.getPrototypeOf(zack)
获取对象的原型(prototype)时,它会返回原型(prototype)对象,这显然是您的 person
对象:
您的原型(prototype)对象可能具有您为其定义的属性(kind: "person"
)。您定义的 person
对象和函数返回的原型(prototype)对象是等效的。
尝试检查相等性,您会发现两者是相等的。
alert(person === Object.getPrototypeOf(zack)); // true
关于JavaScript 获取对象的原型(prototype),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30905353/