Javascript 从http调用解析.csv文件

Javascript 从http调用解析.csv文件,javascript,json,node.js,Javascript,Json,Node.js,我想从http调用中解析csv文件并遍历每条记录。。 目前,我正在使用下面的代码获取.csv文件的全部内容,但我看不到任何方法可以遍历.csv文件上的每个记录 var body = []; request .get('https://api.pluralsight.com/api-v0.9/users?planId=x&token=x') .on('data', function (chunk) { body.push(chunk);

我想从http调用中解析csv文件并遍历每条记录。。 目前,我正在使用下面的代码获取.csv文件的全部内容,但我看不到任何方法可以遍历.csv文件上的每个记录

    var body = [];
    request
    .get('https://api.pluralsight.com/api-v0.9/users?planId=x&token=x')
    .on('data', function (chunk) {
        body.push(chunk);
    })
    .on('end', function () {
        body = body.join('');
        // body now contains csv contents as a string
        res.json(body);
    });
有没有办法把它转换成一个对象数组或类似的东西,我可以分别抓取每条记录


谢谢

这很简单,你不需要图书馆。所需的函数与join相反:


你试过搜索Node.js CSV解析器吗?不,你知道其中哪个更流行吗?CSV解析器看起来不错!如果值本身包含逗号,则不会处理CSV中有效且可选的引号。@HisniFazlija我从未测试过它,但你明白了。我编辑了我的答案以删除错误。@barry johnson我知道这一点,但如果你知道你的数据是什么,那就不太可能了。否则历史会重演:我只想指出,API另一端的未来代码维护者——即使API调用的双方现在都是一个平台——可以合理地预期API的客户机将以全规格处理CSV。如果它只是一个一次性工具,那么是的,显然任何有效的工具都是可以的。
var rows = body.split('\n');
for (var row = 0, rowCount = rows.length; row < rowCount; ++row) {
    var cols = rows[row].split(',');
    for (var col = 0, colCount = cols.length; col < colCount; ++col) {
        var element = cols[col].trim(); // Trim to remove whitespace.
    }
}