gpt4 book ai didi

javascript - javascript中继承的差异

转载 作者:行者123 更新时间:2023-12-03 11:00:31 26 4
gpt4 key购买 nike

function Person()
{
this.name="Person"
}

Person.prototype.hi=function(){
alert("Hello! I'm"+this.name)
}

function Iwanttoinherit(){
...
}

OOP 继承和使用之间的主要区别是什么

Iwanttoinherit.prototype=new Person()

Iwanttoinherit.prototype=Object.create(Person.protoype)

最佳答案

这两者之间的区别在于,new Person() 会导致 Iwanttoinherit 继承 Person 属性,而 Object.create (Person.prototype) 不会。

Object.create(Person.prototype)

这将创建一个对象,其继承链为:Person.prototype

但是,Person.prototype 只是 {},换句话说:Object.create({}),这是相同的作为new Object(),它没有继承的属性

类似地,new Person() 创建一个 Person 对象。通过为 Iwanttoinherit.prototype 分配 new Person() 值,您实际上会导致 Iwanttoinherit 对象继承 Person属性。

关于javascript - javascript中继承的差异,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28116966/

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