首页 > 解决方案 > JavaScript .CSV 转数组

问题描述

我有一个 .CSV 文件。它有 4 列和数千行。我想要 4 个数组,每列一个。我最近开始学习 JavaScript。有人可以告诉我该怎么做吗?在 Python 中,这非常简单——只需几行代码。但是,在看到 JS 中的相关帖子后,我感到非常困惑。任何帮助是极大的赞赏!

(PS:如果我需要“导入”任何东西,请告诉我。任何参考都会非常有帮助!)

标签: javascriptarrayscsv

解决方案


CSV 可能很棘手,因为单元格可以转义逗号 -comma-separated-values看起来是一个不错的选择,因为它符合 RFC 4180:

要安装软件包:

npm install comma-separated-values --save

然后在你的应用程序中使用它:

import CSV from 'comma-separated-values';

const csv = new CSV(data, {header: true}).parse();

这将产生一个数组数组(行) - 将其转换为数组数组(列):

const cols = [[],[],[],[]];
csv.forEach(row => {
  row.forEach((cell, idx) => {
    cols[idx].push(cell);
  });
})

推荐阅读