如何在以角度转换CSV到JSON时删除不需要的双引号

时间:2017-12-30 23:34:06

标签: json angular csv

在我的CSV文件中,我有这个:

id | level | date
1  |   2   | 01-01-2017
2  |   4   | 01-01-2017

使用here中的代码后,我可以在控制台上获取此字符串:

id,level,date
1,2,"01-01-2017"
2,4,"01-01-2017"

我上面用于转换为JSON的结果的代码来自here

  var lines=csv.split("\n");
  var result = [];
  var headers=lines[0].split(",");

    for(var i=1;i<lines.length;i++){
      var obj = {};
      var currentline=lines[i].split(",");

        for(var j=0;j<headers.length;j++){
          obj[headers[j]] = currentline[j];
        }

      result.push(obj);
    }

然而,代码导致:

(2) [{…}, {…}]
0:{id: "1", level: "2", date: ""01-01-2017""}
1:{id: "2", level: "4", date: ""01-01-2017""}

如何删除其他双引号?我希望的结果应该是这样的:

(2) [{…}, {…}]
0:{id: 1, level: 2, date: "01-01-2017"}
1:{id: 2, level: 4, date: "01-01-2017"}

1 个答案:

答案 0 :(得分:0)

最后,我这样做了:

for (var m=0; m<array.length; m++){
  array[m].id    = array[m].id.substring(1, array[m].id.length-1);
  array[m].level = array[m].level.substring(1, array[m].level.length-1);
  array[m].date  = array[m].date.substring(1, array[m].date.length-1);
}

可能不是最好的方式,但在当前情况下它适用于我。我还在寻找改进方法。谢谢!