Nolis
@Nolis
it-гопник

Как удалить повторяющиеся элементы и сложить их кол-во и название в новый массив?

Есть массив:
[
 {
  id: 1,
  name: "краски"
 },
 {
  id: 1,
  name: "краски"
 },
]

Нужно получить:
[{ id: 1, name: "краски", count: 2 }, { ... }, { ... }]
  • Вопрос задан
  • 106 просмотров
Решения вопроса 1
@ArturFirst
const data = [
 {
  id: 1,
  name: "краски"
 },
 {
  id: 1,
  name: "краски"
 },
 {
  id: 2,
  name: "краски"
 },
 {
  id: 1,
  name: "краски"
 },
]

Object.values(data.reduce((acc, item) => {
  const { id } = item
  if(!acc.hasOwnProperty(id)) acc[id] = { ...item, count: 1};
  else acc[id].count += 1
  return acc
}, {}))
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
uniqueArray = a.filter(function(item, pos) {
return a.indexOf(item) == pos;
})
Перепеши под себя и будет тебе радость(но это не точно)
Ответ написан
Ваш ответ на вопрос

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

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