在For循环中创建JavaScript数组

克里斯 :

我想用for循环创建下面的数组

var centres = {
    1979: { x: width * 1 / 41, y: height / 2 },
    1980: { x: width * 2 / 41, y: height / 2 },
    1981: { x: width * 3 / 41, y: height / 2 },
    ...
}

然后按以下方式访问它:

function nodeYearPos(d) {
   return yearCenters[d.year].x;
}

我有以下代码,但仅设置年份...

  var yearCenters = Array.from(new Array(2020-1919+1), (x, i) => i + 1919);
  for (year = 1919; year <= 2020; year++) {
    coords = getCentres(year); // this returns an object in the form {x : x, y : y}
    yearCenters[year] = coords;
  }
alejoreact:

您可以按照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;
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章