【问题标题】:Javascript Array to CSV downloadJavascript 数组到 CSV 下载
【发布时间】:2018-08-15 19:10:49
【问题描述】:

我有这种格式的数据:

var nicedata =[{…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}]

其中的每个对象都采用以下格式:

0:{1: "1", Affiliate Name: "AName", Brand1: "Bname", Business type: "Company Stores", Calendar Month Year: "mm/dd/yyyy", Category: "Null", …}

1:{1: "1", Affiliate Name: "AName", Brand1: "Bname", Business type: "Company Stores", Calendar Month Year: "mm/dd/yyyy", Category: "Null", …}

我想下载 CSV 文件中的数据,我尝试使用 alaSQL,但它没有给我正确的输出。

alasql("SELECT * INTO CSV('DataExport.csv',{headers:true}) FROM ?", [niceData]); 

我可以下载数据,但单行的全部数据正在写入单个单元格。

我想将数据下载到带有标题和值的正确 csv 文件中。谁能帮我解决这个问题?

【问题讨论】:

  • 您是否在浏览器中执行此操作?还是 nodejs?

标签: javascript arrays dictionary export-to-csv


【解决方案1】:

逗号分隔只不过是已放入文本的表格。您可以通过执行包含 for in 循环的 for of 循环来完成此转换,如下面的代码示例。

var array = [{
 a:'11',
 b:'12',
 c:'13'
}, {
 a:'21',
 b:'22',
 c:'23'
}, {
 a:'31',
 b:'32',
 c:'33'
}];

var csv = '';
for(var row of array){
  for(var prop in row){
    var cellVal = row[prop];
    csv += '"' + cellVal + '", '
  }
  csv += '\n';
}

console.log(csv);

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-09-21
    • 2014-07-08
    • 1970-01-01
    • 1970-01-01
    • 2017-09-26
    • 2014-11-19
    • 1970-01-01
    • 2019-05-21
    相关资源
    最近更新 更多