JSFiddle - React, Tailwind, and code Playground

HTML

<form>
  <input type="text" name="firstname" value="John" />
  <input type="text" name="surname" value="doe" />
  <input type="email" name="email" value="" />
  <input type="radio" name="gender" value="male" />
  <input type="radio" name="gender" value="female" />
</form>

<button onclick="get_form_data()">Form Data</button>

JavaScript

function get_form_data()
{
    var el = document.querySelector('form');
    var matches = el.querySelectorAll('input[name]');
    
    var data = {};
    for(var i=0; i< matches.length; i++){
       data[matches[i].name] = matches[i].value;
    }
    var json_data = JSON.stringify(data);
}