JenMorgan / js-learning

0 stars 0 forks source link

Write a program that returns the number of times a character appears in string. Your program should receive a string and the character. It should then return number of times the character appears in the string. #65

Open kartamyshev opened 3 years ago

kartamyshev commented 3 years ago

Given the string "JavaScript" and a character "a", your program should return 2.

JenMorgan commented 3 years ago

Мое кривое решение:

let count = 0;

function appearIn (string, character) {
    let arrayOfCharacters = Array.from(string.toLowerCase());
    let cuttedString = string.slice(1);

    if (cuttedString.length === 0) return count;
    if (arrayOfCharacters[0] === character.toLowerCase()) {
        count++;
        return appearIn(cuttedString, character);
    }
    return appearIn(cuttedString, character);
}

Подсмотрела подсказку:

function appearIn (string, character) {
    let ifAppear = string.toLowerCase().indexOf(character.toLowerCase());

    if (ifAppear === -1) return 0;
    return 1 + appearIn(string.substr(ifAppear + 1), character);
}