角度-生成对象数组并显示数据

时间:2019-08-16 14:35:02

标签: angular

我在这里有一个演示https://stackblitz.com/edit/angular-w7vavy

我正在尝试创建一个函数,该函数将生成包含随机数的对象数组,然后在屏幕上输出该数组

我刚得到一个错误-错误:无法设置未定义的属性'0'

{{1}}

3 个答案:

答案 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);