Задать вопрос
DmitrySerg14
@DmitrySerg14
учу JS

Что происходит в этом цикле?

Подскажите, пожалуйста, что происходит в этом цикле. Если можно, проговорить каждую строчку.

const countChars = (str, char) => {
  let i = 0;
  let count = 0;
  while (i < str.length) {
    if (str[i].toLowerCase() === char.toLowerCase()) {
      count = count + 1;
    }
    i = i + 1;
  }

  return count;
};
  • Вопрос задан
  • 104 просмотра
Подписаться 1 Простой Комментировать
Решения вопроса 1
black1277
@black1277
Вольный стрелок
// создаем стрелочную функцию, принимающую два параметра
const countChars = (str, char) => {
	// создаем переменные и присваиваим им значение 0
	let i = 0;
	let count = 0;
	// запускаем цикл с предусловием
	while (i < str.length) { // пока i меньше чем длина строки str
		// исполняем тело цикла

		// берем символ из строки str расположенный по индексу i и переводим в нижний регистр
		// берем символ из аргумента функции и переводим в нижний регистр
		if (str[i].toLowerCase() === char.toLowerCase()) { // сравниваем оба значения
			// если совпало увеличиваем счетчик на 1
			count = count + 1;
		}
		// перед новой итерацией цикла увеличиваем индекс на 1
		i = i + 1;
	}
// возвращаем из функции накопленный результат подсчета или начальное значение если совпадений не было
	return count;
};

let result = countChars('abba#abba#abba#', '#') // пример использования
console.log(result); // 3
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
iMedved2009
@iMedved2009
Не люблю людей
Подсчет количества определенного символа в строке без учета регистра?
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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