JavaScript 获取对象的原型(prototype)

标签 javascript inheritance

我有:

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 对象:

enter image description here

您的原型(prototype)对象可能具有您为其定义的属性(kind: "person")。您定义的 person 对象和函数返回的原型(prototype)对象是等效的。

尝试检查相等性,您会发现两者是相等的。

alert(person === Object.getPrototypeOf(zack)); // true

关于JavaScript 获取对象的原型(prototype),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30905353/

相关文章:

javascript - 了解原型(prototype)继承

python - 无法在子初始化器的列表理解中调用父方法,但显式循环有效

java - 获取 Java 的 Class<? 的行为扩展 .NET 中的 Map>

javascript - 为什么需要变量名 "$scope"?

javascript - 文本更改时检查输入

Javascript:在对话框中捕获焦点

javascript - 在 JavaScript 中分隔响应中的不同数据

javascript - 如何从 Javascript 中的自定义对象继承所有事件处理程序

javascript - 调用基本构造函数 - Javascript

javascript - 表单在我不想要时自动提交?