Simple JS module to parse/serialize HTTP query/params. Useful for Fetch API or AJAX requests.
See tests at https://params.jsweb.app
Now, its a full ES module, there is no UMD or CommonJS version.
In modern JS development ES modules are the pattern, already supported in newer versions of Node.js and modern borwsers natively.
Backward compatibility is not a concern here. If you use a module bundler (like Webpack or Rollup) to transpile your code, the result will be compatible according to your setup.
You can install it using NPM, Yarn or via Unpkg CDN:
npm i -S @jsweb/params
yarn add @jsweb/params
Tree shaking (since v3.1.0):
import { serialize, parse, form } from '@jsweb/params'<script type="module">
import { form } from 'https://unpkg.com/@jsweb/params'
const data = form({ name: 'Lorem Ispum', mail: 'lorem@ipsum' })
</script>There are only 3 methods within @jsweb/params:
Transform an object to HTTP query string.
import { serialize } from '@jsweb/params'
const query = serialize({ a: 1, b: 2, c: 3 }) // returns 'a=1&b=2&c=3'Transform an HTTP query string to literal object.
import { parse } from '@jsweb/params'
const obj = parse('a=1&b=2&c=3') // { a: 1, b: 2, c: 3 }Transform query string or object into FormData.
Input can be a query string, object or even an HTMLFormElement.
import { form } from '@jsweb/params'
const data1 = form('a=1&b=2&c=3') // FormData instance with fields/values
const data2 = form({ a: 1, b: 2, c: 3 }) // FormData instance with fields/values