我有一段代码可以输出多个对象数组。如何将这些对象合并在一起,以便获得具有一对多关系的组合对象?
var newGender = { gender: "Male" };
var newFruit = [{ fruits: "Apple" }, { fruits: "Orange" }, { fruits: "Kiwi" } ];
var newName = "My name";
如何编写一个函数将这些数据组合在一起,以便得到这样的数组?
[
{
gender: "Male",
name: "My name",
fruits: "Apple"
},
{
gender: "Male",
name: "My name",
fruits: "Orange"
},
{
gender: "Male",
name: "My name",
fruits: "Kiwi"
}
]
我选择的水果中的每个条目都应该是一个单独的对象。
最佳答案
由于水果是唯一可以选择多个值的项目,因此这非常简单:
function combineSelections(name, gender, fruits) {
if (!(name && gender && fruits)) {
return [];
}
return fruits.map(function(fruit) {
return {
name: name,
gender: gender.gender,
fruit: fruit.fruits
};
});
}
var newName = 'Arun';
var newGender = {
gender: 'male'
};
var newFruits = [
{ fruits: 'kiwi' },
{ fruits: 'dragonfruit' },
{ fruits: 'mango' }
];
console.log(combineSelections(newName, newGender, newFruits));
关于javascript - 以一对多关系将对象组合在一起,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47290456/