Actionscript 3 错误#1009:无法访问空对象引用的属性或方法

Actionscript 3 错误#1009:无法访问空对象引用的属性或方法,actionscript-3,Actionscript 3,我看到了#1009错误,但它在视觉上正常工作,有人能帮我吗?提前谢谢。 arrBellen是字段级别的数组 private function bellenSpel(mv:MovieClip,x:Number):void{ stage.addEventListener(KeyboardEvent.KEY_DOWN,keyHandler); if(landschap.x == x){ mv.visible = true; mv.mouseEnabled

我看到了#1009错误,但它在视觉上正常工作,有人能帮我吗?提前谢谢。 arrBellen是字段级别的数组

private function bellenSpel(mv:MovieClip,x:Number):void{
    stage.addEventListener(KeyboardEvent.KEY_DOWN,keyHandler);
    if(landschap.x == x){
        mv.visible = true;
        mv.mouseEnabled = true;
    }
    else{
        mv.visible = false;
        mv.mouseEnabled = false;
    }

    landschap.lblScore_onderwater.text.text = "Score: " + vogelTimer.currentCount;

    if(vogelTimer.currentCount % 300 == 0) {
        var bel:Bel = maakBellen();
        arrBellen.push(bel);
    }

    for(var i = 0;arrBellen.length - 1;i++){
        var bl:Bel = arrBellen[i];
        bl.y += 2; // output says error is here 
    }

}

我认为要么你的数组中没有填充你认为是的对象,要么它们不能强制转换为Bel类型。

而不是:

var bel:Bel = maakBellen();
你喜欢:

var bel:Bel = new maakBellen();

好的,这是我的假设。。。mgraph是正确的,或者maakBellen()实际上是一个返回Bel实例的函数

您的循环条件中有一个错误您有:

for(var i = 0;arrBellen.length - 1;i++){
    var bl:Bel = arrBellen[i];
    bl.y += 2; // output says error is here 
}
你应该

for(var i = 0;i < arrBellen.length;i++){
    var bl:Bel = arrBellen[i];
    bl.y += 2; // output says error is here 
}
for(变量i=0;i
我有点困惑,为什么这会导致NPE而不是OutOfRange类型的错误