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

256
Visualizações
Usando ForEach y obteniendo elementos repetidos en JavaScript

Lo que estoy tratando de hacer es con una entrada agregar palabras en una matriz, luego, a medida que agrega las palabras, quiero que se muestren en una lista. Así que hice una función para representar la lista, y usé un para cada uno, luego usé esa función dentro de la función que empuja las palabras a la matriz. La cosa es que cuando agregas las palabras, for each ejecuta y duplica todas las palabras.

si agrega árbol como palabra, obtiene el resultado: árbol

si agrega conejo, obtiene el resultado: árbol, árbol, conejo

digamos que quieres agregar un halcón y obtienes: árbol, árbol, conejo, árbol, árbol, conejo, halcón

Aquí está el código

 const renderPass = function (array, location) { array.forEach((element) => { let html = `<li class="k">${element}</li>`; location.insertAdjacentHTML("afterbegin", html); }); }; const savingKeyWords = function (e) { e.preventDefault(); keyWords.push(keyWord.value); renderPass(keyWords, listOfKeys); console.log(keyWords); clear(keyWord); };

¿¿Podrías ayudarme con esto??

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

0

Eso se debe a que parece estar usando la misma matriz definida en el contexto global una y otra vez en cada invocación. Simplemente cree una nueva matriz cada vez que se invoque guardar palabras clave.

 const savingKeyWords = function (e) { let keyWords = []; e.preventDefault(); keyWords.push(keyWord.value); renderPass(keyWords, listOfKeys); console.log(keyWords); clear(keyWord); };
about 4 years ago · Juan Pablo Isaza Relatório

0

Creo que 'keyWords' debe reemplazarse con 'keyWord.value' aquí:

 renderPass(keyWords, listOfKeys);

Y

 const renderPass = function (keyWord, location) { let html = `<li class="k">${keyWord}</li>`; location.insertAdjacentHTML("afterbegin", html); };

Espero que esto sea útil para usted. Gracias

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