gpt4 book ai didi

javascript - 为什么 spine.Model 在原型(prototype)中有同名函数

转载 作者:行者123 更新时间:2023-11-30 18:06:44 25 4
gpt4 key购买 nike

我想了解它是如何工作的

为什么函数在原型(prototype)中具有相同的名称以及如果函数如何使用它们 例如 Model.fromForm 优先于原型(prototype)。我的意思是声明是在基类/对象中进行的。当您从该基类/对象创建模型时到底发生了什么?

我还有一个问题,但我先等这个。

谢谢,理查德

最佳答案

Spine 模型对象和模型的“实例”是不同的对象,因此评估的功能不同。这里没有优先级或重载。例如(在 coffeescript 中)以下代码做同样的事情:

YourModel instance = YourModel.fromForm(form) # Uses the model object fromForm

YourModel instance = new YourModel
instance.fromForm(form) # Uses the prototype fromForm

如果你look at the source code ,你可以看到为什么它是等价的;对象 fromForm 被简单地声明为 this.fromForm,它调用原型(prototype)一:

@fromForm: ->
(new this).fromForm(arguments...)

关于javascript - 为什么 spine.Model 在原型(prototype)中有同名函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15641044/

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