Small utility for serialising JS objects to query strings for use in URLs

Matt Coles 819b7612da 1.0.2 9 years ago
lib 5ebb3af60c Add unit tests and fix bugs 9 years ago
spec 5ebb3af60c Add unit tests and fix bugs 9 years ago
src 5ebb3af60c Add unit tests and fix bugs 9 years ago
.babelrc 3dda3d2e7b Add functionality 9 years ago
.gitignore d0278ebf7a Last .gitignore maybe [ci skip] 9 years ago
.jshintrc 3dda3d2e7b Add functionality 9 years ago
.travis.yml 5ebb3af60c Add unit tests and fix bugs 9 years ago
README.md 37342aea83 Add some documentation 9 years ago
jasmine-runner.js 5ebb3af60c Add unit tests and fix bugs 9 years ago
package.json 819b7612da 1.0.2 9 years ago

README.md

js-query-string Travis branch Coverage Status

Simple Javascript module, with no dependencies, to serialise native JS objects to be used in URL parameters. Objects and arrays are seralised as JSON strings to allow for easy representation of nested objects.

Can be installed very simply with:

npm install js-query-string

Example usage:

var jsq = require('js-query-string');

var qs_object = {
    str: "mystr",
    second_str: "myotherstr"
};

var qs_object2 = {
    obj1: {
      a: 1,
      b: "string"
    },
    obj2: {
      c: true,
      b: [1,2]
    }
};

console.log(jsq.convert(qs_object)); // ?str=mystr&second_str=myotherstr
console.log(jsq.convert(qs_object2)); // ?obj1=%7B%22a%22%3A1%2C%22b%22%3A%22string%22%7D&obj2=%7B%22c%22%3Atrue%2C%22b%22%3A%5B1%2C2%5D%7D

Parameters are also encoded for URLs. The following datatypes are supported: RegExp, Object, Array, Number, String, Boolean.