javascript - 将新数字“推”入对象数组

标签 javascript arrays d3.js

我在 CSV 文件中存储了一长串日期。我已经成功地使用 d3.js 加载了这个数据集。现在我想向此数据集添加另一列,其中包含列表中每个日期的随机数。

我相信此数据集已作为对象数组加载。所以我正在使用下面的代码来尝试遍历数组。不过,我认为 push 方法是错误的方法,因为它涉及对象。

d3.csv('claims_cwy.csv', rowConverter, function(dataset) {
    console.log(dataset);

    for(var i=0; i<10; i++) {           
        var newNumber = Math.round(Math.random() * 10);
        dataset[i].push(newNumber);
    }

my dataset

最佳答案

尽管这个问题有几个答案,但没有一个涉及惯用的 D3:

因为你已经有了一个 row conversion function ,使用该函数更改数据数组中的对象。只需将其添加到行函数(使用 d 作为第一个参数):

d.random = Math.random() * 10;
//  ^----- or any other property name

这是一个演示:

var csv = `foo,bar,baz
12,34,21
14,42,27
17,35,17`;

var data = d3.csvParse(csv, rowConverter);

function rowConverter(d) {
  d.random = Math.random() * 10;
  return d;
}

console.log(data)
<script src="https://d3js.org/d3.v4.min.js"></script>

关于javascript - 将新数字“推”入对象数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48924325/

相关文章:

c - 字符串末尾的奇怪值

c - 按升序排列给定的数字

javascript - JS过滤数组但如果存在反向则不过滤

javascript - Realm 可以只查询不插入吗?

javascript - 如何使弹出式 div 在单击时隐藏/显示

arrays - 如何初始化像 std::array 这样的类

javascript - d3.js 无法改变圆弧的外半径

Javascript:在对象中分配变量时命名函数的好处?

javascript - 为什么在 `IdentifierName` 的产生式中递归使用 `IdentifierName` 符号

javascript - dc.js 重置不会影响 mouseZoomable