从单独的值数组创建对象数组



我一直在尝试从潜在值的单独数组中创建一个用户对象数组。第一个数组是用户列表,所有后续数组都是我希望与每个用户关联的属性

给定这些样本阵列:

const arr1 = [user1, user2, user3, user4]
const arr2 = [name, age, dob, etc] //for user 1
const arr3 = [name, age] // for user 2
const arr4 = []
const arr5 = [name]

把它们改造成

[{
username: "user1",
properties: [name, age, dob, etc]
},
{
username: "user2",
properties: [name, age]
},
{
username: "user3",
properties: []
},
{
username: "user4",
properties: [name]
}]

这可行吗?还是我试图将这些数据集与关联时采取了错误的方法

您可以使用map:

const arr1 = ["user1", "user2", "user3", "user4"];
const arr2 = ["Helen", 15, "01-01-2006"];
const arr3 = ["John", 31];
const arr4 = [];
const arr5 = ["Carla"];
let result = [arr2, arr3, arr4, arr5].map((properties, i) =>
({ username: arr1[i], properties })
);
console.log(result);

这里有一种方法。

const arr1 = ['user1', 'user2', 'user3', 'user4']
const arr2 = ['name', 'age', 'dob', 'etc'] //for user 1
const arr3 = ['name', 'age'] // for user 2
const arr4 = []
const arr5 = ['name']
const userdata = [arr2, arr3, arr4, arr5];
const userobj = arr1.map((user, index) => {
return { username: user, properties: userdata[index]}

})
console.log(userobj)

最新更新