我在这里有一个演示https://stackblitz.com/edit/angular-w7vavy
我正在尝试创建一个函数,该函数将生成包含随机数的对象数组,然后在屏幕上输出该数组
我刚得到一个错误-错误:无法设置未定义的属性'0'
{{1}}
答案 0 :(得分:2)
您需要在循环之前在代码中显式定义testData。
this.testData = [];
答案 1 :(得分:2)
在循环之前初始化this.testData = []
,在循环内使用this.testData.push({...the object...})
。也许this.dates
也必须初始化。
答案 2 :(得分:1)
我认为初始化必须适当注意。我删除了打字稿语法,并将其制成普通的JS。在这里,您去了:
testData = []
dates = ['2014', '2015', '2016', '2017']
min = 10;
max = 100;
createData = () => {
for (let n = 0; n <= dates.length; n++) {
for (let i = 0; i < 4; i++) {
testData[i] = {
data_1: Math.random() * (max - min),
data_2: Math.random() * (max - min),
data_3: Math.random() * (max - min),
data_4: Math.random() * (max - min),
date: dates[i]
}
}
}
}
createData();
console.log(testData);