JavaScript implementation of JSON Pointer add setter
npm install jsonpointer.js.setter


JavaScript implementation of JSON Pointer (RFC 6901).
Can be used as Node.js package, AMD module or a plain script.
via npm:
$ npm install jsonpointer.js
via Bower:
$ bower install jsonpointer.js
or copy src/jsonpointer.js file from repo.
js
var jsonpoiner = require('jsonpointer.js'); // XXX: '.js' is part of package name!
console.log(typeof jsonpointer); // 'object'
`###AMD
`js
require('jsonpointer', function(jsonpointer) {
console.log(typeof jsonpointer); // 'object'
});
`$3
`html
`API
$3
get() accepts strings, objects and arrays as evaluation target.
`js
var target = {
foo: {
bar: 'foobar'
},
baz: [true, false],
'~': 'tilde',
'/': 'slash'
});var targetJSON = JSON.stringify(target);
jsonpointer.get(target, '/foo'); // {bar: 'foobar'}
jsonpointer.get(target, '/foo/bar'); // 'foobar'
jsonpointer.get(target, '/some/nonexisting/path'); // undefined
jsonpointer.get(target, '/~0'); // 'tilde'
jsonpointer.get(targetJSON, '/~1'); // 'slash'
jsonpointer.get(targetJSON, '/baz'); // [true, false]
jsonpointer.get(targetJSON, '/baz/0'); // true
jsonpointer.get(targetJSON, '/baz/2'); // undefined
`Second argument might be omitted, in such case
get() returns a function
that takes pointer as argument and evaluates it.
`js
var evaluate = jsonpointer.get(target);
evaluate('/foo/bar'); // 'foobar'
`There are several cases when
.get() throws an exception: - First argument is not string, object or array.
- First argument is string but is not valid JSON string.
- Seconds argument is not valid JSON Pointer string.
- Unacceptable token met during evaluation (check section 4 of spec for examples).
-
'-' token used in JSON Pointer string and it's going to be evaluated in Array` context.