Задать вопрос
vovvkka
@vovvkka

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

Здравствуйте, есть массив:
const arr = [ '9', '7', 'q', 'q', '9' ]
const arr1 = []
нужно определить, сколько одинаковых значений есть в этом массиве и добавить их в другую переменную arr1.
т.е arr1 = ['9', '9', 'q', 'q'] // В каком порядке необязательно
Если повторяющихся значений нет, то массив arr1 должен быть пустым.
Значения в массиве могут быть разными, то есть решение нужно динамичное

Буду благодарен за помощь.
  • Вопрос задан
  • 72 просмотра
Подписаться 1 Простой 6 комментариев
Решения вопроса 2
sergiks
@sergiks Куратор тега JavaScript
♬♬
const dupes = [ '9', '7', 'q', 'q', '9' ]
  .filter((item, _, arr) => arr.indexOf(item) !== arr.lastIndexOf(item));
// [ "9", "q", "q", "9" ]
Ответ написан
Комментировать
@WAR_VIK
Можно с помощью классического вложенного цикла:
let arr = ['9',  '7',  'q',  'q',  '9'];
let res = [], count = 0;
for(let i = 0; i < arr.length; ++i) {
  for(let j = 0; j < arr.length; ++j) {
    if(arr[i] === arr[j]) ++count;
  }
  if(count > 1) res.push(arr[i]);
  count = 0;
}
console.log(res);
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

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