Files
30-seconds-of-code/snippets/form-to-object.md
2023-04-28 22:29:23 +03:00

634 B

title, type, tags, cover, dateModified
title type tags cover dateModified
Form to object snippet
browser
object
sail-away-2 2020-10-19T22:49:51+03:00

Encodes a set of form elements as an object.

  • Use the FormData constructor to convert the HTML form to FormData and Array.from() to convert to an array.
  • Collect the object from the array using Array.prototype.reduce().
const formToObject = form =>
  Array.from(new FormData(form)).reduce(
    (acc, [key, value]) => ({
      ...acc,
      [key]: value
    }),
    {}
  );
formToObject(document.querySelector('#form'));
// { email: 'test@email.com', name: 'Test Name' }