Ready to take your JavaScript development to the next level? Meet npm Enterprise - the ultimate in enterprise JavaScript. Learn more »

query-string-object

0.2.5 • Public • Published

querystring Build Status

support object or array like php did: ?a[]=1&a[]=2 -> a=[1,2]

Usage

install in shell

npm install query-string-object

in js file

qs = require('query-string-object')
qs('xx=yy&zz..') // just like what is pass to the native qs.parse
qs.stringify({
  fInt: 1,
  fString: 'string',
  fObject: {
    anobject: {a:1, b:2},
    anything: 'thing'
  },
  fArray: [1,2,"string"]
}) 
// fInt=1&fString=string&fObject[anobject][a]=1&fObject[anobject][b]=2&fObject[anything]=thing&fArray[]=1&fArray[]=2&fArray[]=string

Tests

npm install
./node_modules/.bin/mocha --reporter tap test.js

Expects

a=1&b=2

output

{
  a:1,
  b:2 
}

a=1&b[]=1&b[]=2&c=3

output

({
  a: 1,
  b: [1, 2],
  c: 3
});

a=1&b[]=1&c=3

output

({
  a: 1,
  b: [1],
  c: 3
});

a=1&b[1]=1&c[3]=2&c=3

output

({
  a: 1,
  b: {
    1: 1
  },
  c: {
    3: 2
  }
});

a=1&b[eric]=dum&c[stive]=jobs&c=3

output
({
  a: 1,
  b: {
    eric: "dum"
  },
  c: {
    stive: "jobs"
  }
});

a=1&b[eric]=dum&b[stive]=jobs&c=3

output

({
  a: 1,
  b: {
    eric: "dum",
    stive: "jobs"
  },
  c: 3
});

a=1&b[eric][]=dum&b[stive][]=jobs&b[stive][]=fans&c=3

output

({
  a: 1,
  b: {
    eric: ["dum"],
    stive: ["jobs", "fans"]
  },
  c: 3
});

install

npm i query-string-object

Downloadsweekly downloads

341

version

0.2.5

license

none

homepage

github.com

repository

Gitgithub

last publish

collaborators

  • avatar
Report a vulnerability