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

338
Visualizações
Desafío de lista de clientes (TestDome)

Estoy tratando de resolver este desafío de TestDome y necesito ayuda. Realmente no entiendo cómo debo alternar el correo electrónico y cómo agregar el elemento a DOM... ¡¡Por favor, solo sin Vanilla JS!!

Implemente la función showCustomers para que represente a los clientes como elementos de lista. El primer argumento de la función, clientes, es una matriz de objetos con las propiedades de nombre y correo electrónico. El segundo argumento de la función, targetList, es una lista HTML desordenada a la que se debe agregar cada cliente como un elemento de lista independiente.

Las propiedades de nombre y correo electrónico deben agregarse como dos párrafos dentro del elemento de la lista. Al principio, el elemento de párrafo de correo electrónico no debe estar presente en el DOM. El elemento de párrafo de correo electrónico debe agregarse al DOM después de hacer clic en el nombre, y debe eliminarse del DOM cuando se vuelve a hacer clic en el nombre.

Por ejemplo, el siguiente código:

 document.body.innerHTML = ` <div> <ul id="customers"> </ul> </div> `; let customers = [{name: "John", email: "john@example.com"}, {name: "Mary", email: "mary@example.com"}]; showCustomers(customers, document.getElementById("customers")); let customerParagraph = document.querySelectorAll("li > p")[0]; if(customerParagraph) { customerParagraph.click(); } console.log(document.body.innerHTML); Should render: <div> <ul id="customers"> <li> <p>John</p> <p>john@example.com</p> </li> <li> <p>Mary</p> </li> </ul> </div>

ESTE ES MI CÓDIGO

 function showCustomers(customers, targetList) { customers.forEach(item =>{ let res = `<li> <p> ${item.name}</p>; <p> ${item.email}</p>; </li>; targetList.innerHTML = targetList.appendChild(res); }) }

https://www.testdome.com/questions/javascript/customer-list/49798?visibility=3&skillId=2

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

0

Reemplace la línea

targetList.innerHTML = targetList.appendChild(res);

con

targetList.innerHTML += res; .

Básicamente tienes dos formas de agregar elementos:

  • aumentar el contenido de innerHTML con cadenas sin procesar
  • agregar niños al elemento DOM

En su caso, res es una cadena, por lo que no puede usar targetList.appendChild

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