Solucionado: Quantas vezes um caractere apareceu?
7
0

Solucionado: Quantas vezes um caractere apareceu?

👋 Opa, Gabriel e Pedro aqui e seja bem-vindo para mais um episódio da nossa newsletter semanal, a Challenge House. Toda quinta-feira, temos a solução de um desafio JavaScript que foi divulgado no início da semana.

Gabriel e Pedro
3 min
7
0

👋 Opa, Gabriel e Pedro aqui e seja bem-vindo para mais um episódio da nossa newsletter semanal, a Challenge House. Toda quinta-feira, temos a solução de um desafio JavaScript que foi divulgado no início da semana.

Vem com a gente que lá vem história…


🏠 Challenge House sendo desvendada

Email image

No início da semana, compartilhamos o desafio para mostrar quantas vezes um caractere apareceu em uma determinada frase.

Sem mais demora, a solução em formato de código é essa aqui:

function countChar(char, phrase) {
let count = 0;
for (let position = 0; position < phrase.length; position++) {
if (phrase[position] === char) count++;
}
return count;
}

🌀 Ao vivo e à cores

Não acredita que o código ali em cima funciona? Criamos uma execução dele no CodePen para você poder ver de perto. Basta rodar 👇


🤓 Por que na minha máquina funciona?

Não adianta viver de CTRL + C e CTRL + Z. É preciso entender o motivo daquele código rodar da forma correta. Vamos lá?

1 - Declarando um contador

Se estamos querendo contar quantas vezes um certo caractere apareceu, nada melhor do que ter uma variável que irá guardar esse valor, não é mesmo?

Com isso em mente, inicializamos um count na primeira linha da nossa função com o valor zero e toda vez que acharmos o caractere na frase, iremos incrementar +1.

É importante ressaltar aqui que como essa variável terá o valor alterado durante o código, é preciso que seja uma variável let.

2 - Passando por cada caractere da frase

Quando pensamos em passar por cada coisa de algo maior, a ideia que vem na nossa mente deve ser sempre o mais próximo de um loop.

Como mencionado na Dica de ouro do texto anterior, precisamos checar caractere por caractere. Para isso, criamos um for loop que o seu ponto de parada é justamente o tamanho da frase (phrase).

Desse modo, em cada iteração do for loop, o valor da variável position será a posição de um determinado caractere.

3 - Checando o caractere atual com o desejado

Uma das formas de acessar um único caractere de uma string no JavaScript é pela seguinte sintaxe:

const phrase = 'Sou uma string';
console.log(phrase[2]);

Dessa maneira, utilizamos dessa sintaxe com o for loop para acessar a posição atual daquele caractere e verificar se é igual ao nosso char desejado.

Caso isso ocorra, basta somar +1 no nosso contador e correr para o abraço.

4 - Retornando o contador

Para finalizar, o nosso loop já acabou de trabalhar e a variável count já está com o valor desejado. Feito isso, retornamos este número.

Se você pensou de outra maneira e fez o um código diferente, iríamos adorar saber a solução também. Sinta-se a vontade para chamar a gente no instagram da Challenge House ou responder por email esta newsletter.


Se você achou o conteúdo dessa newsletter interessante, pense com carinho em fazer alguma dessas coisas:

  1. ❤️ Compartilhar com os amigos - é com a sua ajuda que iremos levar o Challenge House para cada vez mais pessoas.

Compartilhar conteúdo

  2. ✉️ Se inscrever na nossa newsletter - se ainda não é, iremos ficar muito felizes com a sua inscrição.

Seguir meu Canal

Até segunda-feira,

Gabriel e Pedro 👋