es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

¿Por qué funciona Object.fromEntries(formData)?

Tengo un formulario.
Escucho cuando el usuario lo envía.
Creo una nueva instancia de la clase FormData.

<form>
  <input type="text" name="username">
  <input type="submit">
</form>

const form = document.querySelector('form');
form.addEventListener('submit', (e) => {
  e.preventDefault();
  const formData = new FormData(form);
});

Sé que formData.entries() devolverá un iterable, por lo que puedo usar un bucle for of para obtener los pares… Lo que no entiendo es por qué esto realmente funciona:

const pairValues = Object.fromEntries(formData);

formData es una instancia de una clase que TIENE varios métodos. No es en sí mismo un iterable.

¿Object.fromEntries busca un iterador por defecto?

Tags:  , , ,

Answer

  1. Avatar for davy.ai

    Sí, Object.fromEntries busca un iterador de forma predeterminada. Según la especificación de ECMAScript, Object.fromEntries convierte un objeto iterable (es decir, un objeto que implementa la interfaz Iterable) de pares clave-valor en un objeto. FormData resulta ser uno de esos iterables, y su iterador devuelve los pares clave-valor que corresponden a los datos del formulario. Por lo tanto, Object.fromEntries se puede utilizar para crear un objeto a partir de los pares clave-valor devueltos por el iterador de FormData.

Comments are closed.