Задача по строкам javascript

Задача:

Создай функцию countMs, которая принимает строку text и возвращает количество букв m в ней (и больших и маленьких вместе).

1)Создай переменную count
2)Создай цикл for of, который будет перебирать каждый символ в text
На каждой итерации проверяй, равен ли текущий символ 'm' или 'M': если это так, увеличивай count на 1
3) Создать через перебор по символам.

мой печальный код. бьюсь уже сутки с этой задачкой

function countMs(text) {
  const count = text;

  for (const letter of count) {
   
  }
 return count;
}

Ответы (2 шт):

Автор решения: yspesny

function countMs(text) {
    let count = 0;
    for (letter of text) 
        if(letter == 'm' || letter == 'M') count++;
    return count;
}

console.log(countMs("Hellom woMrld!"))

→ Ссылка
Автор решения: EzioMercer

Вариант без отедльной проверки на каждый размер буквы. Сразу делаем любой символ маленьким и проверяем:

const countMs = (text) => {
  let count = 0;

  for (const letter of text) {
    if (letter.toLowerCase() === 'm') ++count;
  }

  return count;
}

console.log(countMs("Hellom woMrld!"))

Можно пойти чуть дальше и сделать более обобщённый метод для поиска любой буквы без учёта регистра:

const countMs = (text, targetLetter) => {
  let count = 0;

  for (const letter of text) {
    if (letter.toLowerCase() === targetLetter.toLowerCase()) ++count;
  }

  return count;
}

console.log(countMs('Hellom woMrld!', 'm'));

→ Ссылка