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

418
Visualizações
Encontrar la palabra más larga en un código javascript de cadena que no funciona en la última palabra

Ya resolví esto usando una función de división, pero todavía estoy confundido en cuanto a por qué mi código anterior de solo bucle no funciona cuando intento encontrar la palabra más larga en una cadena en javascript. Se supone que la función que estoy escribiendo devuelve el número de letras de la palabra más larga. Después de usar la consola, cada vez que uso solo una palabra, devuelve el valor con el que inicialicé el contador de letras (que es 0). Si la palabra más larga es la última palabra, devuelve la segunda palabra más larga de las palabras anteriores. Si la palabra más larga está en cualquier lugar excepto en la última palabra, el resultado es exacto. Parece que tiene problemas para contar las letras de la última palabra. Aquí está mi código.

 let lettCount = 0; let largest = 0; let spaceCheck = /\s/; for(let i = 0; i < str.length; i++) { if(spaceCheck.test(str[i]) == true) { if(lettCount > largest) { largest = lettCount; } lettCount = 0; } else { lettCount++; } } return largest;
about 4 years ago · Juan Pablo Isaza
1 Respostas
Responde à pergunta

0

Debería poder simplificar la lógica aquí significativamente, usando String.split() y Math.max() .

Dividimos la cadena en una matriz, luego usamos Array.map() para obtener la longitud de cada palabra, luego usamos Math.max() junto con la sintaxis Spread para obtener la palabra más larga.

 let str = 'the longest word is dinosaur'; function getLongest(str) { return Math.max(...str.split(/\s/).map(s => s.length)); } console.log('Longest word:', getLongest(str));

También puedes hacer esto con String.split() y Array.reduce() , esto es incluso un poco más simple:

 let str = 'the longest word is dinosaur'; function getLongest(str) { return str.split(/\s/).reduce((acc,s) => s.length > acc ? s.length: acc, 0); } console.log('Longest word:', getLongest(str));

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