gpt4 book ai didi

javascript - 承载状态是什么意思,一个对象如何既承载又继承状态?

转载 作者:塔克拉玛干 更新时间:2023-11-02 20:49:33 26 4
gpt4 key购买 nike

ECMAScript 5.1,第 3 页:

In ECMAScript, the state and methods are carried by objects, and structure, behaviour, and state are all inherited.

携带状态是什么意思,一个对象如何既携带又继承状态?

最佳答案

“状态”本质上是指“对象记住的东西”。如果对象的属性 color 设置为 "blue",则这是其状态的一部分。而“携带状态”只是意味着它有一些。

因此,我们可以(不精确地)将该句子的第一部分简化为:“在 ECMAScript 中,对象可以存储数据(和方法)。”

但是,ECMAScript 是一种面向对象的语言,使用原型(prototype)继承。这意味着任何对象不仅可以拥有其自己的数据和方法,还可以从其父对象(其原型(prototype))继承数据和方法。

用 JavaScript 编写一个非常粗糙的示例:

function Foo() {
this.color = "blue";
}
Foo.prototype = { shape: "circle" }

var foo = new Foo();
alert(foo.shape); // This will be "circle", even though the datum is technically part of the prototype.

关于javascript - 承载状态是什么意思,一个对象如何既承载又继承状态?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11378301/

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