Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

183
Visualizações
¿Cómo puedo saber cuántos de cada letra hay en una cadena dada?

Así que quiero que mi código cuente la cantidad de veces que aparece una letra dentro de una cadena y genere el resultado.

es decir:

 amount(door, o) ===> 2

¿Puedo hacerlo usando un bucle for usando

 function(amount,letter){ var count=0 for (var i=0 ; i < amount.length ; i++) { if(amount[i] == letter[i]) count++ } }

no estoy muy seguro de cómo hacer que funcione

about 4 years ago · Juan Pablo Isaza
2 Respostas
Responde à pergunta

0

Su código era casi correcto pero hubo algunos errores.

  • Tienes que darle un nombre a la función.
  • Tienes que volver a count
  • Tienes que pasar cadenas reales
  • Deberías usar let o const en lugar de var
  • Deberías usar === en lugar de ==

 function amount(word, letter) { let count = 0; for (let i = 0; i < word.length; i++) { if(word[i] === letter) count++ } return count; } console.log(amount('door', 'o'));

Usando métodos de matriz puedes simplificar aún más

 function amount(word, letter) { return Array.prototype.reduce.call(word, (acc, el) => acc + (el === letter), 0); } console.log(amount('door', 'o'));

about 4 years ago · Juan Pablo Isaza Relatório

0

Puede dividir la cadena en una matriz y luego recorrer cada una de las letras. Tenemos un objeto letterTracker, que es donde se almacenan nuestros valores. Si la clave de la letra aún no existe en el objeto, le agregaremos la clave. Si existe, simplemente le agregaremos uno.

 var countLetters = (string)=>{ const stringArr = string.split('') let letterTracker = {}; stringArr.forEach(letter=>{ letterTracker[letter] ? letterTracker[letter]++ : letterTracker[letter] = 1 }); return letterTracker; } countLetters('wuddup'); //returns { w: 1, u: 2, d: 2, p: 1 }

Usando un método más amigable con ES5, y sin dividir la cadena en una matriz, podemos hacer esto (se logrará el mismo resultado):

 function countLetters(string){ let letterTracker = {}; for(let i = 0; i < string.length; i++){ if(letterTracker[string[i]]){ letterTracker[string[i]]++ } else { letterTracker[string[i]] = 1 } } return letterTracker; } countLetters('wuddupp?'); //returns { w: 1, u: 2, d: 2, p: 2, ?: 1 }
about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda