У меня есть массив таких объектов:
const customers = [
{
customer_name: 'Negan Lucille',
customer_age: 45,
customer_weapon: 'Bat',
customer_email: 'negan@sanctuary.com',
customer_city: 'Washington'
},
{
customer_name: 'Daryl Dixon',
customer_age: 41,
customer_weapon: 'Crossbow',
customer_email: 'daryl.dixon@kickass.com',
customer_city: 'Atlanta'
},
{
customer_name: 'Rick Grimes',
customer_age: 45,
customer_weapon: 'Magnum 357',
customer_email: 'rick@alexandria.com',
customer_city: 'King County'
},
];
, и я хочу разделить customer_name
на имя и фамилию, поэтому имя должно оставаться в customer_name
, а последнее имя должно быть помещено во вновь созданное свойство customer_last_name
. Также у меня есть массив newKeys
, который я использую для замены текущих ключей в объектах customers
, например:
const newKeys = [
'firstname',
'lastname',
'age',
'weapon',
'email',
'city'
]
let newCustomers = customers.map(obj =>
Object.values(obj).reduce((acc, cur, i) => {
acc[newKeys[i]] = cur;
return acc; }, {}));
, и новый массив должен выглядеть так:
customers = [
{
firstname: 'Negan',
lastname: 'Lucille',
age: 45,
weapon: 'Bat',
email: 'negan@sanctuary.com',
city: 'Washington'
},
{
firstname: 'Daryl',
lastname: 'Dixon',
age: 41,
weapon: 'Crossbow',
email: 'daryl.dixon@kickass.com',
city: 'Atlanta'
},
{
firstname: 'Rick',
lastname: 'Grimes',
age: 45,
weapon: 'Magnum 357',
email: 'rick@alexandria.com',
city: 'King County'
},
]
Как лучше всего это сделать? Будем признательны за пример!