Files
30-seconds-of-code/snippets/formToObject.md
Isabelle Viktoria Maciohsek 27c168ce55 Bake date into snippets
2021-06-13 13:55:00 +03:00

646 B

title, tags, firstSeen, lastUpdated
title tags firstSeen lastUpdated
formToObject browser,object,intermediate 2019-03-13T14:50:06+02:00 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' }