@Denioo

Как преобразовать массив в объект?

Есть массив:

[
  {id: 123, color: 'black'},
  {id:124, color: 'green'}
]

Надо сделать объект:

{
  123: {color: 'black'},
  124: {color: 'green'}
}
  • Вопрос задан
  • 223 просмотра
Решения вопроса 3
Seasle
@Seasle Куратор тега JavaScript
array.reduce((accumulator, entry) => {
  const { id, ...data } = entry;
  accumulator[id] = data;
  
  return accumulator;
}, {});

P. S. Вариант через .map быстрее.
Ответ написан
Комментировать
yarkov
@yarkov Куратор тега JavaScript
Помог ответ? Отметь решением.
const array = [{id: 123, color: 'black'},{id:12.4, color: 'green'}];

array.reduce((obj, {id, ...others}) => ({
  ...obj,
  [id]: {...others}
}), {});
Ответ написан
Комментировать
lastuniverse
@lastuniverse
Всегда вокруг да около IT тем
var obj = arr.reduce((a,v)=>{
  a[v.id]={color: v.color};
  return a;
},{});
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

Похожие вопросы