gpt4 book ai didi

JavaScript 继承和构造函数

转载 作者:行者123 更新时间:2023-11-28 02:43:55 24 4
gpt4 key购买 nike

我正在尝试理解 JavaScript 中的继承。我正在使用原型(prototype)将子类链接到其父类。但是一旦我定义了关系,父类的构造函数就会开始运行。

    <script type="text/javascript">
function Person ()
{
window.alert('We\'ve got a new person!');
}

function King ()
{
window.alert('We\'ve got a new king!');
}

King.prototype = new Person();

//King.prototype.constructor = King;
//var erik = new King();
</script>

在 JavaScript 中使用继承的正确方法是什么?

引发困惑的教程:https://developer.mozilla.org/en-US/docs/JavaScript/Introduction_to_Object-Oriented_JavaScript

最佳答案

那是因为 Javascript 是一种原型(prototype)语言,并不真正支持这种方式的继承。它的对象是松散类型,可以动态扩展额外的功能和属性。

因此,您实际上要做的是创建 Person 的实例,然后可以使用额外的方法对其进行扩展。

教程说明了这一点:

In JavaScript you do this by assigning an instance of the parent class to the child class, and then specializing it.

如果您习惯于真正的(基于类的)面向对象,那么这会相当令人困惑。

关于JavaScript 继承和构造函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12222420/

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