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

218
Visualizações
Si no funciona según lo previsto, ¿hay algún problema con mi lógica?

Estoy tratando de recorrer una matriz y si hay elementos coincidentes, debería ser verdadero en una nueva matriz; de lo contrario, devolverá falso.

 const wordPerformance = [] const wordsReviewed = "candy, cattle, cat, call, cheat"; const wordsIncorrect = "candy, cattle, call, cheat"; wordsReviewed.split(/,\s?/).forEach((word) => { if (wordsIncorrect.includes(word)) { wordPerformance.push(false); } else { console.log(word) //unreachable, though 'cat' should be logged wordPerformance.push(true); } }); console.log(wordPerformance);

Según esta lógica, wordPerformance debería devolver

 [false, false, true, false, false]

sin embargo, está volviendo

 [false, false, false, false, false]

¿Quizás hay algo que no estoy viendo?

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

0

Primero debe dividir las wordsIncorrect Cadena incorrecta de la misma manera que lo hizo con las wordsReviewed para que se compare con el elemento y no incluya cadenas que tengan algo al final como hacer coincidir "gato" con "ganado".

Este es el ejemplo fijo.

 const wordPerformance = [] const wordsReviewed = "candy, cattle, cat, call, cheat"; const wordsIncorrect = "candy, cattle, call, cheat"; const wordsIncorrectSplitted = wordsIncorrect.split(/,\s?/); wordsReviewed.split(/,\s?/).forEach((word) => { if (wordsIncorrectSplitted.includes(word)) { wordPerformance.push(false); } else { console.log(word) //unreachable, though 'cat' should be logged wordPerformance.push(true); } }); console.log(wordPerformance);

ingrese la descripción de la imagen aquí

about 4 years ago · Juan Pablo Isaza Relatório

0

También se está olvidando de dividir su cadena de palabras incorrectas en una matriz. En este momento, está comprobando si la cadena incluye la palabra en lugar de una matriz. Como resultado, String.includes lleva a cabo la coincidencia de patrones en toda la cadena en lugar de elementos individuales. Dado que cada palabra incorrecta incluye el patrón cat en ellas, pensará que gato está incluido y devolverá falso:

 const wordPerformance = [] const wordsReviewed = "candy, cattle, cat, call, cheat"; const wordsIncorrect = "candy, cattle, call, cheat"; wordsReviewed.split(/,\s?/).forEach((word) => { if (wordsIncorrect.split(/,\s?/).includes(word)) { //split incorrectWords wordPerformance.push(false); } else { console.log(word) //unreachable, though 'cat' should be logged wordPerformance.push(true); } }); console.log(wordPerformance);
about 4 years ago · Juan Pablo Isaza Relatório

0

Necesita dividir wordsIncorrect también. if (wordsIncorrect.split(",").includes(word))

Producción:

 cat [ false, false, true, false, false ]
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