Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
update json in-place, preserving formatting
branch: master

Fetching latest commit…

Cannot retrieve the latest commit at this time

Failed to load latest commit information.
example
test
.travis.yml
README.markdown
index.js
package.json

README.markdown

jsup

Update json strings in-place.

build status

example

stub

stub.json:

{
    "a" : [   1,  2,  333333,  4   ] ,
    "b" : [ 3, 4, { "c" : [ 5, 6 ] } ],
    "c" :
      444444,
    "d" : null
}

stub.js:

var jsup = require('jsup');
var fs = require('fs');
var src = fs.readFileSync(__dirname + '/stub.json', 'utf8');

var s = jsup(src)
    .set([ 'a', 2 ], 3)
    .set([ 'c' ], 'lul')
    .stringify()
;
console.log(s);

output:

$ node stub.js
{
    "a" : [   1,  2,  3,  4   ] ,
    "b" : [ 3, 4, { "c" : [ 5, 6 ] } ],
    "c" :
      "lul",
    "d" : null
}

methods

var jsup = require('jsup');

var j = jsup(src)

Return a new jsup updater from the json string body src.

j.get(path=[])

Get the element at path.

j.set(path, value)

Replace the element at path with value, preserving indentation.

Right now value will be run through JSON.stringify() for the replacement.

There must be an element at path already or this method will throw.

j.stringify()

Return the new string source with modifications, preserving indentation.

install

With npm just do:

npm install jsup
Something went wrong with that request. Please try again.