gpt4 book ai didi

javascript - 为什么这个 JavaScript OO 是错误的?

转载 作者:行者123 更新时间:2023-11-30 23:45:06 24 4
gpt4 key购买 nike

我将以简单的方式放置我的代码,但如果有好心人想要帮助,代码是 |on Github|/lib/inmotion/editor.js(第99行)

editor.js

function Editor(){
var instance = this;
this.key_frames = [] // a list of key frames
this.kf = null // the current KeyFrame

function notice_click( click ){
instance.kf.add_bone( 1 ) // <-- error here
// instance.kf.list.push( 1 ) // <-- this works, but is incomplete
}
}

key_frame.js

function KeyFrame(){
instance = this
instance.changed = false // for the redraw :)
instance.list = []

function add_bone( bone ){
instance.list.push( bone )
instance.changed = true
return true
}
}

我的程序有一个独特的编辑器实例,其中有许多关键帧实例。
每个关键帧都包含大量骨骼。
因此总是有一个事件的关键帧,由 Editor.kf 的实例定义
由于我只有一个 kf,因此我可以毫无问题地向该 kf 添加骨骼,但当我添加更多关键帧时,我只能将 add_bone 添加到我创建的最后一个 kf 中!为什么?

如果我不够清楚,我表示歉意,如有疑问请提问

最佳答案

据我了解,问题是每次调用 KeyFrame 时“实例”都会被覆盖。您应该直接使用“this”。

关于javascript - 为什么这个 JavaScript OO 是错误的?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3278321/

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