如何在JS构造函数中声明一个空数组?

时间:2018-06-16 20:35:25

标签: javascript

我正在开始游戏,出于教学目的,我想尝试做动画。为此,我有一个类Personnage(字符),我想在其中声明一个图像数组。 但无论我尝试什么,都以undefined变量结束。

这是我的代码:

class Personnage {
constructor(imgSrc, x, y, state) {
    this.imgSrc = imgSrc;
    this.x = x;
    this.y = y;
    this.state = state;
    this.idleImg = [];
    this.currentImage = new Image;
    this.canvas = document.createElement("canvas");
    this.ctx = this.canvas.getContext("2d");
    this.animationState = 1;
}

//Load Images
createIdle() {
    for (let i = 1; i <= 9; i++) {
        let img = new Image();
        img.src = this.imgSrc + "/Idle (" + i + ").png";
        img.onload = function () {
            this.idleImg.push(img);
        }
    }
}
//--------
}

这是我得到的错误:

  

未捕获的TypeError:无法读取属性&#39; push&#39;未定义的   Image.img.onload

有人能帮帮我吗?

0 个答案:

没有答案