Как посчитать количество одинаковых элементов в массиве js
Ответы

Вячеслав Межуревский
26 сентября 2022
Для поиска одинаковых элементов в массиве нагляднее всего воспользоваться циклом:
const nums = [1, 2, 1, 4, 5, 1, 7, 8, 1, 10];
let count = 0;
for (let i = 0; i < nums.length; i +=1 ) {
if (nums[i] === 1) {
count += 1;
}
}
// Вывод: 4
Или например, необходимо посчитать сколько раз встречается каждая цифра в исходном массиве, с помощью reduce:
const nums = [1, 2, 7, 4, 5, 2, 7, 8, 1, 10];
const res = nums.reduce((acc, i) => {
if (acc.hasOwnProperty(i)) {
acc[i] += 1;
} else {
acc[i] = 1;
}
return acc;
},{})
// Вывод: { '1': 2, '2': 2, '4': 1, '5': 1, '7': 2, '8': 1, '10': 1 }
0
0
Добавьте ваш ответ