JavaScript对象埋藏巢

时间:2016-09-17 14:43:19

标签: javascript object html5-canvas

我正在编写一个名为lightning的画布GUI处理程序,并将其存储为对象

var lightning = {}

在此对象内部有许多函数,变量和嵌套对象,例如renderhandleClickEventimage。出于这个问题的目的,闪电的结构如下:

var lightning = {
     render : function(){
          // rendering script
     },
     image : {
          load : function(source) {
               // Adds image to image storage
               // Generates and returns image ID
               // [[calls lightning.render()]]
          }
     }
}

我的问题是,如何在不进入全局范围并致电lightning.render的情况下致电lightning.render,因此如果我要将闪电重命名为“不亮”,它将不会中断...我会从内部调用lightning.render,但嵌套有点深吗?

Btw 闪电中还有一个init函数,我可以在图像对象中设置一个变量来指向闪电self,但我不知道#39;不知道该怎么做。

谢谢,

-Dylan

1 个答案:

答案 0 :(得分:0)

答案很简单。

正如我所提到的,有一个init函数被调用来构造闪电。在lightning.image中,我创建了一个变量that,在lightning.init中,我设置了this.image.that = this

我只能在this.that.update()中拨打lightning.image.add

感谢您的帮助,@ Bergi