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

131
Visualizações
Cómo ejecutar una función sin parámetros en un evento definido por el detector de eventos

Tengo una función que crea un elemento de input y lo agrega a otro elemento.

Estoy tratando de hacerlo, de modo que si se usa una matriz como parámetro de esta función, los datos de la matriz se usan como el value del elemento de input . Si no se especifica una matriz como parámetro, el valor de entrada debe estar vacío.

Aquí está mi código

HTML

 <div id="app></div>

JavaScript

 let app = document.getElementById('app') let people = [["Adam",10],["Peter",90],["John",30],["Stephen",50]] for (var key in people) { showName(people[key]) } function showName(pData) { let singleName = document.createElement('input') if (typeof pData !== 'undefined') { singleName.value = pData[0] } app.append(singleName) } let button = document.createElement('button') button.addEventListener('click',showName) button.innerHTML = "Add name" app.prepend(button)

Esto funciona bien, puedo ejecutar la función con un parámetro y sin parámetro y funciona como se esperaba.

Sin embargo, cuando configuro la función para que se active a través de un detector de eventos y sin un parámetro, puedo ingresar una entrada con un valor de 'indefinido', este no es el caso si ejecuto la función escribiendo showName().

Por lo tanto, esto me lleva a creer que se pasa algún tipo de parámetro cuando el evento se activa a través de un detector de eventos. ¿Es este el caso? Y si es así, ¿cómo hago para que el botón cree un elemento de input sin valor?

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

0

Por lo tanto, esto me lleva a creer que se pasa algún tipo de parámetro cuando el evento se activa a través de un detector de eventos. ¿Es este el caso?

Sí, su función pasará el objeto de evento, que contiene información sobre el clic que tuvo lugar.

Y si es así, ¿cómo hago para que el botón cree un elemento de entrada sin valor?

En lugar de pasar showName directamente a addEventListener, cree una nueva función. Esa función ignorará el objeto del evento y llamará a showName sin parámetros:

 button.addEventListener('click', (event) => showName()) // Or: button.addEventListener('click', () => showName())
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