Update json strings in-place.
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
}
var jsup = require('jsup');
Return a new jsup updater from the json string body src
.
Get the element at path
.
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.
Return the new string source with modifications, preserving indentation.
With npm just do:
npm install jsup