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

    630

    Version

    0.2.5

    License

    none

    Last publish

    Collaborators

    • avatar