2016-11-14 117 views
0

我的数据的阵列目前看起来是这样的:下划线转换对象的对象

{ 'Australia' : [ Array[2] ], 
    'Bangladesh' : [ Array[7] ], 
    etc...} 

我喜欢将其转换为:

[ { 'country': 'Australia', 
    'count': 2 }, 
    { 'country' : 'Bangladesh', 
    'count': 7}, 
    etc... 
] 

什么是数据转换的最简单的方法?

+0

你是什么意思?,Wriging转换器应该不那么辛苦。将这些数据解码为一个对象,然后将此对象与gson或jacskon或任何其他JSON映射器映射为所需的格式。如果你只想转换一个数据样本,可能会使用一些专门的文本编辑器(Sublime,Notepad ++等)。 InteliJ的大部分IDE也具有这种可能性 – Rafal

回答

2

使用图书馆像Underscore,你可以映射对象到你想生成表单:

_.map(_.keys(data), function(key) { 
    return { 'country': key, 'count': data[key].length } 
}); 
0

使用下划线你可以使用这样的事情

var cities = {"Australia" : ["Sydney, Perth"], "US" : ["New York", "Boston"]} 
 
var list = []; 
 
_.each(_.keys(cities), function(countryName){ 
 
\t list.push({"country" : countryName, "count" : cities[countryName].length}) 
 
}); 
 
console.log(list)
<script src="https://cdnjs.cloudflare.com/ajax/libs/underscore.js/1.8.3/underscore-min.js"></script>