在javascript中将json csv转换为json对象的最佳方法?

时间:2016-03-30 17:34:13

标签: javascript lodash

我有一个javascript对象如下:

[{name:'bla', ts:['a','b','c'], ms: ['d','e','f']}]

如果没有一堆临时对象,我可以将其转化为对象的最有效方法如下:

[{name:'bla',ts:'a',ms:'d'},
 {name:'bla',ts:'b',ms:'e'},
 {name:'bla',ts:'c',ms:'f'}]

我愿意使用像lodash或者下划线这样的东西来实现这一目标。

2 个答案:

答案 0 :(得分:0)

它很难看但有效(并且很容易添加'额外'字段)

var a = [{name:'bla', ts:['a','b','c'], ms: ['d','e','f']}]

var result = [];
a.forEach(function(obj){
    obj.ts.forEach(function(item, index) {
        result.push({
            name: obj.name,
            ts: item,
            ms: obj.ms[index]
        })
    })
})

console.log(result)

答案 1 :(得分:0)

var arr = [{
  name: 'bla',
  ts: ['a', 'b', 'c'],
  ms: ['d', 'e', 'f']
}];

function parseArray(arr) {
  var result = [];
  arr.forEach(function(obj) {
    for (var i = 0; i < obj.ts.length; i++) {
      result.push({
        name: obj.name,
        ts: obj.ts[i],
        ms: obj.ms[i]
      });
    }
  });
  return result;
}

console.log(parseArray(arr));