Javascript 整形json对象
我正试图把它改造成这样:Javascript 整形json对象,javascript,json,highcharts,Javascript,Json,Highcharts,我正试图把它改造成这样: rows[ {0: c:[{0: {v:'2013'}, 1: {v: 'apple'},2: {v: '200'}}]}, {1: c:[{0: {v:'2014'}, 1: {v: 'apple'},2: {v: '1000'}}]}, {2: c:[{0: {v:'2013'}, 1: {v: 'orange'},2: {v: '200'}}]}, {3: c:[{0: {v:'2014'}, 1: {v: 'orange'},2: {v: '10
rows[
{0: c:[{0: {v:'2013'}, 1: {v: 'apple'},2: {v: '200'}}]},
{1: c:[{0: {v:'2014'}, 1: {v: 'apple'},2: {v: '1000'}}]},
{2: c:[{0: {v:'2013'}, 1: {v: 'orange'},2: {v: '200'}}]},
{3: c:[{0: {v:'2014'}, 1: {v: 'orange'},2: {v: '1000'}}]}
]
或
或
苹果:[年份:2013,金额:200},{年份:2014,金额:1000}]
我尝试过使用lodash的.map、.uniq、.reduce、.zipObject,但仍然无法理解它。使用了以下lodash功能: 使用u.map获取水果的名称。 uniquefuturnames=通过q.uniq获取唯一名称,然后对其进行排序。 data2013和data2014=使用u.remove获取特定年份的水果并分别对其进行排序。 使用u.zipObject压缩uniqueFruitsName和data2013 uniqueFruitsName和data2014 然后,合并两个压缩对象
[
apple: {
2013: {year: '2013', amount: '200'},
2014: {year: '2014', amount: '1000'}
},
orange: {
2013: {year: '2013', amount: '200'},
2014: {year: '2014', amount: '1000'}
}]
对我来说,
2013
存储2013
的对象似乎数据完整性不好。为什么不仅仅是一个数组apple:[{年份:2013,金额:200},{年份:2014,金额:1000}]
好的,我该如何实现?“我仍在努力,任何帮助都将不胜感激。@Maddy,基本上只需在行中循环并构建所需的新对象即可。”。你被卡住的部分是什么?我已经分离出独特的苹果和橘子,现在我想把它与两年不同的金额合并。相信我,我已经尝试了3-4天玩lodash的功能。我对javascript有点陌生。请尝试一下,让我知道它是否真的那么容易。
[
apple: {
2013: {year: '2013', amount: '200'},
2014: {year: '2014', amount: '1000'}
},
orange: {
2013: {year: '2013', amount: '200'},
2014: {year: '2014', amount: '1000'}
}]
var dataSeries = _.map(mergedData, function(asset,key) {
return {
name: key,
data: [fruit[0].amount, fruit[1].amount]
}
});