我想转换此对象:
"age": [
{
"Under 20": "14",
"Above 40": "1"
}
]
到此:
$scope data = {rows:[
{c: [
{v: "Under 20"},
{v: 14}
]},
{c: [
{v: "Above 40"},
{v: 1},
]}
}]
我试过了:
$.map(resp.age, (el, key) => {
arr.push({c: [{v: el}, {v: el}]});
});
我知道如何使用$.map
和arr.push
,但我无法获取密钥Under 20
并获取元素值14
。
我怎样才能做到这一点?
答案 0 :(得分:2)
这应该这样做:
function convert(arr) {
var ages = arr["age"][0];
return {
'rows': Object.keys(ages).map(function(key) {
return {'c': [{'v': key}, {'v':parseInt(ages[key])}] };
})
}
}
// Usage:
convert({
"age": [{
"Under 20": "14",
"Above 40": "1"
}]
});
以上代码输出:
{"rows":[{"c":[{"v":"Under 20"},{"v":14}]},{"c":[{"v":"Above 40"},{"v":1}]}]}