Javascript 如何将JSON对象转换为数组数组
在我的应用程序中,我从控制器得到一个json结果,我想把它转换为前端的数组数组,这样我就可以使用GoogleCharts api了 目前,我在获取的字符串上使用了Javascript 如何将JSON对象转换为数组数组,javascript,arrays,json,Javascript,Arrays,Json,在我的应用程序中,我从控制器得到一个json结果,我想把它转换为前端的数组数组,这样我就可以使用GoogleCharts api了 目前,我在获取的字符串上使用了$.parseJSON(result),因此最终我在控制台中得到了以下结果: 我想得到的是: 以下是初始json字符串,在parseJSON部分之前得到: [{"rolename":"some role","perc":45.5},{"rolename":"another role","perc":36.4},{"rolename"
$.parseJSON(result)
,因此最终我在控制台中得到了以下结果:
我想得到的是:
以下是初始json字符串,在parseJSON部分之前得到:
[{"rolename":"some role","perc":45.5},{"rolename":"another role","perc":36.4},{"rolename":"role three","perc":9.1},{"rolename":"role four","perc":9.1}]
关于如何做到这一点,有什么建议吗?ES6(非常新的酷东西):
工作:
ES5(与许多浏览器兼容):
你有一个对象数组,你想要一个数组。因此,获取每个元素并将其与对象的值映射 ES6(全新的酷东西):
工作:
ES5(与许多浏览器兼容):
你有一个对象数组,你想要一个数组。因此,获取每个元素并将其与对象的值映射 您可以使用
map
将对象更改为数组,也可以使用Object.keys
和map
仅返回对象值
var data=[{“rolename”:“某个角色”,“perc”:45.5},{“rolename”:“另一个角色”,“perc”:36.4},{“rolename”:“角色三”,“perc”:9.1},{“rolename”:“角色四”,“perc”:9.1}]
var result=data.map(函数(e){
返回Object.keys(e).map(函数(k){
返回e[k]
})
})
console.log(result)
您可以使用map
将对象更改为数组,也可以使用Object.key
和map
仅返回对象值
var data=[{“rolename”:“某个角色”,“perc”:45.5},{“rolename”:“另一个角色”,“perc”:36.4},{“rolename”:“角色三”,“perc”:9.1},{“rolename”:“角色四”,“perc”:9.1}]
var result=data.map(函数(e){
返回Object.keys(e).map(函数(k){
返回e[k]
})
})
console.log(result)
Post-actual data here我编辑了我的问题。Post-actual data here我编辑了我的问题。
var json=[{"rolename":"some role","perc":45.5},{"rolename":"another role","perc":36.4},{"rolename":"role three","perc":9.1},{"rolename":"role four","perc":9.1}];
var answer=json.map(el=>Object.values(el));
var answer=json.map(function(el){
var arr=[];
for(var key in el){
arr.push(el[key]);
}
return arr;
});