TypeScript:无法读取属性' push'在[null]中未定义

时间:2016-02-28 22:33:33

标签: typescript

  

Error: Cannot read property 'push' of undefined in [null].

class A implements OnInit {
    stringArr: string[];

    ngOnInit() {
        for(let i=0; i<4; i++) {
            this.stringArr.push("aaa");
        }
    }
}

3 个答案:

答案 0 :(得分:63)

需要初始化数组:

stringArr = [];

答案 1 :(得分:10)

对我来说,语法比接受的答案多一点,因为我使用的是完整的数组类型。

stringArr: Array<String> = [];

答案 2 :(得分:0)

class A implements OnInit {
    stringArr: string=[];
    ngOnInit() {
        for(let i=0; i<4; i++) {
            this.stringArr.push("aaa");
        }
    }
}

此处stringArr定义为字符串,但不是字符串数组。将stringArr定义为空数组[]。