麻烦大佬解释一下,下图代码中的this.node

如图所示的代码中,我在属性中添加了不止一个node,求教为什么this.node.runAction(…)并没有指定是哪个node,但就让要移动的node移动了。

是不是说我在creator中给哪个node指定了这个js文件,就执行哪个?

还有个问题,在js中如果要this.XXX 这个XXX除了自己定义的和api还没有其他第三种情况?

this,通常情况下指的是当前的脚本。this.node指的是当前脚本的节点。因此this.node.runAction就是让脚本上的该节点进行移动。

谢谢谢谢,解释的很清晰,终于理解了。
我还有个问题麻烦一下,下图代码中的main ,在这个js脚本中并没有声明,我在项目的其他脚本中也搜了一下没有声明这个“mian”变量,那这里的this.main是什么意思,官方的api中也没有找到。

代码源自:https://github.com/andynicoo/Physical-Pinball

建议你输出一下是什么东西,我没见过,而且自己输出也为undefined

嗯嗯 谢谢提供解决思路。

输出为undefined?我要打死你。

项目的其它脚本中有main变量 但没有 mian变量。 你冷静点。

我说的undefined意思是this.main并不是官方定义的参数,你需要自己找这个main参数在哪

不好意思刚上论坛, 上面的“main”与“mian”纯属手误,在项目中没有声明:main变量 是直接调用的,麻烦请教一下

?没懂

大佬你意思是 this.balls[0].main = this; 这句话是声明 了main变量吗

对的,balls[0]就是那个脚本。

我去 太神奇了! 感谢答疑
大佬还有个问题 ,下图中的collider也没有声明啊,你说的那种方式的也没有。

你圈着的就是声明啊,声明了一个collider是this.getComponent(cc.Collider)。

感谢感谢 刚接触脚本语言 没了解到js中竟然有变量的隐式申明 感谢感谢 打扰了