我有以下JSON:
{
"temperature": "22.2",
"power": "6",
"current": "156"
}
我需要将它转换为这种显式结构:
{
"key": "temperature",
"value": "22.2"
},
{
"key": "power",
"value": "6"
},
{
"key": "current",
"value": "156"
}
有一种优雅,简单,快捷的方法吗?
最好,thx
答案 0 :(得分:5)
var newStructure = Object.keys(obj).map(function(key){
return {'key':key, 'value':obj[key]}
})
实施例
var obj = {
"temperature": "22.2",
"power": "6",
"current": "156"
}
var arr = Object.keys(obj).map(function(key){return {'key':key,'value':obj[key]}})
console.log(arr)
答案 1 :(得分:2)
Object.hashToKeyValuePairs = function (hash) {
var ret = [];
for (var i in hash)
ret.push({ key: i, value: hash[i]});
return ret;
};
// example
document.body.innerHTML = JSON.stringify(
Object.hashToKeyValuePairs({ a: 1, b: 2, c: 3 })
);