📅  最后修改于: 2023-12-03 15:10:32.522000             🧑  作者: Mango
在JavaScript中,对象数组是常见的数据结构。对象数组中的每个元素都是一个对象,这些对象可能包含多个键和值。在某些情况下,您可能需要更改对象数组中的键,以便在代码的其他部分中更轻松地使用它们。本文将介绍在JavaScript中更改对象数组中的键的不同方法。
在JavaScript中,您可以使用for循环和对象解构来更改对象数组中的键。下面是一段代码,它将更改对象数组中每个对象的键名称“name”为“fullName”。
const users = [
{ name: 'John Doe', age: 25 },
{ name: 'Jane Doe', age: 30 },
{ name: 'David Smith', age: 35 },
];
for (let i = 0; i < users.length; i++) {
const { name, ...rest } = users[i];
users[i] = { fullName: name, ...rest };
}
console.log(users);
// Output: [
// { fullName: 'John Doe', age: 25 },
// { fullName: 'Jane Doe', age: 30 },
// { fullName: 'David Smith', age: 35 }
// ]
在代码中,我们使用for循环迭代每个用户对象。我们使用对象解构来获取旧对象的名称,并将其赋值给新的键“fullName”。然后,我们将所有其他键和值使用展开语法(spread syntax)添加到新对象中。最后,我们将新对象赋值回输入数组。
另一种更改对象数组中键的方法是使用map()和Object.assign()。map()方法返回一个新数组,因此我们可以在不修改原始数组的情况下更改其内容。下面是一段代码,它将更改用户对象数组中每个对象的键名称“name”为“fullName”。
const users = [
{ name: 'John Doe', age: 25 },
{ name: 'Jane Doe', age: 30 },
{ name: 'David Smith', age: 35 },
];
const newUsers = users.map(({ name, ...rest }) =>
Object.assign({}, { fullName: name }, rest)
);
console.log(newUsers);
// Output: [
// { fullName: 'John Doe', age: 25 },
// { fullName: 'Jane Doe', age: 30 },
// { fullName: 'David Smith', age: 35 }
// ]
在代码中,我们使用map()方法,使用对象解构来获取旧对象的名称,并将其分配给新的键“fullName”。然后,我们使用Object.assign()方法将所有其他键和插值合并到新的对象中。最后,我们将新的数组赋值给newUsers,并打印结果。
在JavaScript中,您可以使用for循环和对象解构或map()和Object.assign()等方法来更改对象数组中的键名称。您可以根据您的特定需求选择其中一种方法。记住,使用map()方法返回新的数组而不修改原始数组。