在Javascript中,基于键/值对将对象拆分为对象数组的最小方法是什么?
我有一个物体:在Javascript中,基于键/值对将对象拆分为对象数组的最小方法是什么?,javascript,ecmascript-6,Javascript,Ecmascript 6,我有一个物体: var obj = { family : [{name: 'will', age: 30}, {name: 'husain', age: 12}], friends : [{name: 'cody', age: 31}, {name: 'jeff', age: 11}], school : [{name: 'daniel', age: 20}, {name: 'carl', age: 15}] } 把它换成这个 var obj = [ {fami
var obj = {
family : [{name: 'will', age: 30}, {name: 'husain', age: 12}],
friends : [{name: 'cody', age: 31}, {name: 'jeff', age: 11}],
school : [{name: 'daniel', age: 20}, {name: 'carl', age: 15}]
}
把它换成这个
var obj = [
{family : [{name: 'will', age: 30}, {name: 'husain', age: 12}]},
{friends : [{name: 'cody', age: 31}, {name: 'jeff', age: 11}]},
{school : [{name: 'daniel', age: 20}, {name: 'carl', age: 15}]}
];
现在写我正在使用for..in
构建一个新数组并创建一个对象,其中key作为新对象的key等等
我现在正在做这件事
var arr = [];
for (let key in obj) {
arr.push({key: obj[key]})
}
我认为这是你最好的选择:
var obj={
家庭:[{姓名:'will',年龄:30},{姓名:'husain',年龄:12}],
朋友:[{姓名:'cody',年龄:31},{姓名:'jeff',年龄:11}],
学校:[{姓名:丹尼尔,年龄:20},{姓名:卡尔,年龄:15}]
}
var r=Object.keys(obj.map)(x=>({[x]:obj[x]}))
console.log(r)
我认为这是您最好的选择:
var obj={
家庭:[{姓名:'will',年龄:30},{姓名:'husain',年龄:12}],
朋友:[{姓名:'cody',年龄:31},{姓名:'jeff',年龄:11}],
学校:[{姓名:丹尼尔,年龄:20},{姓名:卡尔,年龄:15}]
}
var r=Object.keys(obj.map)(x=>({[x]:obj[x]}))
console.log(r)
如果看不到您拥有的代码,很难说得太多。你的代码有效吗?你有一些性能问题吗?它是可行的,但是它占用了很多空间,并且忍不住觉得它可能会很简单,如果没有看到你的代码,很难说太多。你的代码有效吗?您是否有一些性能问题?它可以工作,但占用了大量空间,并且忍不住觉得可以更简单一些