javascript - 快速 Javascript 继承 : Understanding __proto__

标签 javascript inheritance prototype-programming

给定以下构造函数,

Dog = function(name, age, ...){
    Animal.call(this, name, age, ...);
    // And some other stuff that dogs do
}

我使用以下代码行从 Animal 类复制我的方法和属性,

Dog.prototype = new Animal();

你能告诉我这和

有什么不同吗
Dog.prototype.__proto__ = Animal.prototype;

因为它们似乎具有相同的效果。

最佳答案

__proto__ 允许您访问对象的内部 [[Prototype]] 属性。它可用于获取或设置已现有对象的原型(prototype)。

protoype 是一个函数的属性,用于设置该函数创建的对象的原型(prototype)。

Afaik,只有 Firefox 允许您使用 __proto__It is not standard and deprecated .


值得一读:

关于javascript - 快速 Javascript 继承 : Understanding __proto__,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6225562/

相关文章:

javascript - 在构造函数中绑定(bind)方法

javascript - 如何正确定义javascript原型(prototype)绑定(bind)?

asp.net - JavaScript - 如何从字符串名称调用函数并传递数组对象?

javascript - useEffect 仅运行一次,刷新后不会再次获取

javascript - Vue.js nextTick 在计算属性中

javascript - 我可以在哪个文件中放置一个脚本来清除 Titanium 应用程序的缓存

javascript - 扩展原型(prototype)数组

java - Java 和 Hibernate 的继承 - 更新类型转换

关于扩展类的PHP继承问题

c# - 重构为子类