无法读取未定义打字稿的属性"推送"

use*_*496 0 arrays angular

我试图将一个日期对象推入一个数组,我得到这个错误"无法读取属性'推送'未定义".

export class CalendarComponent { 
days: Date[]

showMonths() {

 const interval = new Interval();

    interval.fromMonth  = this.selectedFromMonth.number;
    interval.fromYear = this.selectedFromYear.number;
    interval.toMonth = this.selectedToMonth.number;
    interval.toYear = this.selectedToYear.number;

    for (let i = interval.fromMonth - 1; i < 11; i++) {
      const day = new Date(interval.fromYear, i, 1);
       this.days.push(day);
      // console.log(day);
      // days.push(day);
    }

    // console.log(day);
}
Run Code Online (Sandbox Code Playgroud)

如果'days'已经是一个数组并且'day'没有未定义,为什么我会收到此错误?

Sur*_*yan 6

您需要初始化您的财产.你刚刚设置了它的类型,但实际上它是undefined.

days: Date[] = [];
Run Code Online (Sandbox Code Playgroud)