我正在尝试从 json 对象创建 <String, Array()>
映射。
想象一下,我得到了这个 json 结构:
[
{
"userId": "123123",
"password": "fafafa",
"age": "21"
},
{
"userId": "321321",
"password": "nana123",
"age": "34"
}
]
我要创建的 map 是:
键(字符串),值(数组)
{
"userId": [
"123123",
"321321"
],
"password": [
"fafafa",
"nana123"
],
"age": [
"21",
"34"
]
}
是否有可能做到这一点? :/
提前致谢。
最佳答案
var json = '[{"userId" : "123123", "password": "fafafa", "age": "21"}, {"userId" : "321321", "password" : "nana123", "age" : "34"}]';
var list = JSON.parse(json);
var output = {};
for(var i=0; i<list.length; i++)
{
for(var key in list[i])
{
if(list[i].hasOwnProperty(key))
{
if(typeof output[key] == 'undefined')
{
output[key] = [];
}
output[key].push(list[i][key]);
}
}
}
document.write(JSON.stringify(output));
输出:
关于javascript - 如何转换 JavaScript hashmap?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/14963080/