Пусть дан следующий массив:
let arr = ['a', 'b', 'c', 'a', 'a', 'b'];
Давайте подсчитаем количество элементов a в этом массиве.
Для этого будем перебирать массив циклом и каждый раз, когда нам будет встречаться элемент со значением a, будем увеличивать какой-нибудь счетчик на единицу:
let arr = ['a', 'b', 'c', 'a', 'a', 'b'];
let counter = 0;
for (let elem of arr) {
if (elem == 'a') {
counter++;
}
}
console.log(counter);
Дан следующий массив:
let arr = [1, 2, 3, 2, 4, 3, 5, 6, 3, 2, 3];
Подсчитайте количество цифр 3 в этом массиве.
Модифицируйте предыдущую задачу так, чтобы в одном цикле одновременно подсчитывалось и количество троек, и количество двоек.
Результат в виде объекта
Пусть у нас опять дан наш массив:
let arr = ['a', 'b', 'c', 'a', 'a', 'b'];
Давайте подсчитаем сколько каких элементов есть в этом массиве и представим результат в виде объекта вот такого объекта:
{a: 3, b: 2, c: 1}
Для решения сделаем объект count с начальным значением {a: 0, b: 0, c: 0}. Будем перебирать массив циклом и увеличивать соответствующее значение в объекте count. К примеру: если текущий элемент массива - это 'a', то увеличим count['a'] на единицу - вот так: count['a']++.
Только вместо 'a' следует подставлять текущий элемент массива, вот так: count[elem]++. Давайте напишем окончательный код:
let arr = ['a', 'b', 'c', 'a', 'a', 'b'];
let count = {a: 0, b: 0, c: 0};
for (let elem of arr) {
count[elem]++;
}
console.log(count); //выведет {a: 3, b: 2, c: 1}
Пойдем дальше: то, что объекта count имеет изначальное значение {a: 0, b: 0, c: 0} - не очень удобно, ведь мы обычно не знаем, какие элементы есть в массиве.
Пусть объект count формируется автоматически таким образом: если такого элемента в count нет, то ему следует присвоить значение 1, а если есть - просто увеличить значение на единицу:
let arr = ['a', 'b', 'c', 'a', 'a', 'b'];
let count = {};
for (let elem of arr) {
if (count[elem] === undefined) {
count[elem] = 1;
} else {
count[elem]++;
}
}
console.log(count); // выведет {a: 3, b: 2, c: 1}
Самостоятельно, не подсматривая в мой код, решите описанную задачу.