Я столкнулся с проблемой в онлайн-курсе:
Напишите функцию с именем vowelCount, которая принимает строку и возвращает объект с ключами в качестве гласной и значениями в виде количества раз, когда гласная появляется в строка. Эта функция должна быть нечувствительной к регистру, поэтому должны учитываться строчные и прописные буквы
Примеры: vowelCount ('El ie') // {e: 2, i: 1};
решение от инструктора было таким:
function vowelCount(str){
var splitArr = str.toLowerCase().split("");
var obj = {};
var vowels = "aeiou";
splitArr.forEach(function(letter){
if(vowels.indexOf(letter) !== -1){
if(obj[letter]){
obj[letter]++;
} else{
obj[letter] = 1;
}
}
});
return obj;
}
Я понимаю решение до второго оператора «if». Я знаю, что первая инструкция «if» проверяет, принадлежат ли «буквы» во входной строке «гласным». Затем во втором «if» он проверяет, находится ли «буква» в пустом объекте «obj», созданном выше, но в этой строке «obj» пуст, пока к нему не добавляется «буква», так что точка для этого «если». Кроме того, почему для добавления этой новой «буквы» к объекту требуется приращение. Я попробовал код без приращения, но объект все еще пуст.