[英]Cannot read property 'push' of undefined array
我正在嘗試使用從2016年開始到當前年結束的數字填充數組。
我的方法看起來像這樣
generateYears () {
const currentDate = new Date();
let y = 2016;
console.log(currentDate.getFullYear());
for (y = 2016; y <= currentDate.getFullYear(); y++) {
this.testYears.push(y);
}
console.log(this.testYears);
}
和testYears被宣布為
testYears: number[];
我嘗試將其聲明為any [],但出現了相同的錯誤。
我該怎么辦?
number[]
語法只是設置變量的類型,而不是值。 打字稿類型在運行時被刪除。 運行代碼時,從未使用實際值定義testYears
,因此未定義。
要修復,只需將testYears
定義為
public testYears: number[] = [];
這樣, testYears
同時具有類型( number[]
)和值( []
)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.