2 回答
TA贡献1780条经验 获得超1个赞
你可以像 gorak 评论的那样做,但是使用 getCenters 函数
var yearCenters = Object.fromEntries(Array.from(new Array(2020-1919+1), (x, i) => [i + 1919, getCenters(i + 1919)]));
或者你也可以试试
var yearCenters = {};
for (year = 1919; year <= 2020; year++) {
coords = getCenters(year);
yearCenters[year] = coords;
}
TA贡献2012条经验 获得超12个赞
当您尝试按年份获取yearCenters数组(例如yearCenters[year])时,这将不起作用,因为年份不是数组中的索引。
我建议您首先将数组转换为 JS 对象,以便对其进行索引可以使用多年。
见下面的片段 -
// Create obejct from array
var yearCenters = Object.fromEntries(Array.from(new Array(2020-1919+1), (x, i) => [i + 1919, null]))
// This loop remains same
for (year = 1919; year <= 2020; year++) {
coords = getCentres(year); // this returns an object in the form {x : x, y : y}
yearCenters[year] = coords;
}
// Mock function
function getCentres(year) {
return {
x: Math.random() * 100,
y: Math.random() * 100
}
}
console.log(yearCenters)
添加回答
举报