@Aleks_Ko

Можно ли переименовать ключи в объектах находящихся в массиве?

Добрый день,
подскажите, как можно привести ключи в объектах находящихся в массиве к одинаковому виду, при этом длина объектов одинаковая, но ключи могут быть разные как пример:

[
{'key1' :  'Kiev', 'key2' :  'Ukraine'},
{'134 ':  'Moskow', 'key2' :  'Rusian federation'},
{'test2' :  'Warszaw', 'key2' :  'Poland'},
{'_test' :  'Paris', 'test' :  'France'},
... итп
]

Заранее спасибо большое!!!
  • Вопрос задан
  • 272 просмотра
Решения вопроса 2
0xD34F
@0xD34F Куратор тега JavaScript
Какие ключи хотелось бы иметь: const keys = [ 'city', 'country' ];.

Собираем новый массив:

const newArr = arr.map(n => Object.fromEntries(Object.values(n).map((v, i) => [ keys[i], v ])));

Обновляем существующий:

arr.forEach(n => Object.entries(n).forEach(([ k, v ], i) => (delete n[k], n[keys[i]] = v)));
Ответ написан
Комментировать
WblCHA
@WblCHA
Тип такое?
const keys = [ 'city', 'country' ];
arr.map((rawObj) => Object.values(rawObj).reduce((acc, value, index) => {
  acc[keys[index]] = value;
  return acc;
}, {}));
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
23 нояб. 2024, в 01:31
1000 руб./за проект
23 нояб. 2024, в 00:16
2000 руб./за проект