4.0.0 • Published 5 years ago

tiny-params v4.0.0

Weekly downloads
38
License
MIT
Repository
github
Last release
5 years ago

tiny-params

A tiny URL param parser, suitable for server or browser

highlights

  • it's tiny (< 25 sloc)
  • it's highly browser compatible (IE6 and everything else)
  • it ships with both ES6 and CommonJS modules
  • it makes repeated keys an array ?a=1&a=2 -> { a: [1, 2] }
  • it handles explicit arrays ?a[]=1 -> { a: [1] }
  • it handles flags (key with no value) ?a=b&flag -> { a: 'b', flag: true }
  • it decodes encodeURIComponent encoded items
  • it converts booleans and numbers from strings
  • it converts the values 'null' and 'undefined' to null
  • it respects the hash (as per RFC 3986)
  • it's competitively fast (not the fastest, not far from it)

lowlights

  • it looks like code golf, kind of is
  • it uses decodeURIComponent (sparingly) which is slow (but highly compatible)

install

$ npm install --save tiny-params

usage

const tinyParams = require('tiny-params')
const url = 'http://localhost:80/base/res?name=andrew&zip=37615&zip=37601'
const params = tinyParams(url)
// params === { name: 'andrew', zip: [37615, 37601] }

License

MIT © Andrew Carpenter

4.0.0

5 years ago

3.0.1

5 years ago

3.0.0

5 years ago

2.2.0

5 years ago

2.1.0

5 years ago

2.0.4

6 years ago

2.0.2

7 years ago

1.0.3

7 years ago

1.0.2

7 years ago

1.0.1

7 years ago

1.0.0

7 years ago