@FastClick
Я человек, а ты? :)

Как исключить повторы в массиве по определенную параметру?

Имеется массив:

[
  {
    "id": 1,
    "text": "Привет!"
  },
  {
    "id": 2,
    "text": "Как дела?"
  },
  {
    "id": 1,
    "text": "Привет!"
  },
  {
    "id": 3,
    "text": "Что делаешь?"
  },
  {
    "id": 2,
    "text": "Как дела?"
  },
  {
    "id": 1,
    "text": "Привет!"
  },
  {
    "id": 4,
    "text": "Как здоровье?"
  }
]


Нужно каким-то способом исключить повторы по id, чтобы получился следующий вид:

[
  {
    "id": 1,
    "text": "Привет!"
  },
  {
    "id": 2,
    "text": "Как дела?"
  },
  {
    "id": 3,
    "text": "Что делаешь?"
  },
  {
    "id": 4,
    "text": "Как здоровье?"
  }
]


В инетрнете находил лишь решения с простыми массивами.
  • Вопрос задан
  • 53 просмотра
Решения вопроса 1
Kozack
@Kozack Куратор тега JavaScript
Thinking about a11y
Используйте Array.prototype.filter() и Set. Внутри фильтра проверяйте находится ли ваш id в Set. Если нет -- добавляете чтобы исключить все последующие элементы
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

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