gpt4 book ai didi

javascript - js继承和原型(prototype)赋值

转载 作者:行者123 更新时间:2023-12-03 10:58:50 25 4
gpt4 key购买 nike

我正在学习 JS 原型(prototype)和继承,我了解到正确的方法是:

function A(){}
A.prototype.doSomething=function(){}
function B(){}
B.prototype = new A();
console.log( (new B()) instanceof A);//true
console.log( (new B()) instanceof B);//true

如你所见,我正在将 A 的新实例设置到 B 中但正如你所看到的,它非常适合使用

function A(){}
A.prototype.doSomething=function(){}
function B(){}
B.prototype = A.prototype;
console.log( (new B()) instanceof A);//true
console.log( (new B()) instanceof B);//true

但是这里: http://ejohn.org/apps/learn/#76

他们声称原型(prototype)分配是错误的,我不明白为什么?

最佳答案

这是第一个示例中的原因:

console.log( (new B()) instanceof A);//true

但是

console.log( (new A()) instanceof B);//true

所以这是错误的用法......
正确的做法是按照下面的方式来做:

function Parent(){}
function Child(){}
Child.prototype = Object.create(Parent.prototype);

关于javascript - js继承和原型(prototype)赋值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28172271/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com