1.0.2 • Published 7 years ago

gold-json-pointer v1.0.2

Weekly downloads
-
License
ISC
Repository
-
Last release
7 years ago

Json Pointer

Here is a solid json-pointer implementation. The main differences to this implementation are

  • conforms to RFC 6901
  • throws an error when a value is not found / the pointer is invalid
  • additional utilities

This json-pointer implementation will return undefined if the pointer could not be resolved, which allows checks like if (pointer.get(data, "#/path/to/nested/item") {...} instead of if (path && path.to && path.to.nested ....

This library exposes

  • jsonpointer.get
  • jsonpointer.set and
  • jsonpointer.delete

install

npm i gold-json-pointer

pointer.get

	var data = {
		parent: {
			child: {
				title: "title of child"
			}
		}
	}

	var titleOfChild = pointer.get(data, "#/parent/child/title"); // "title of child"

pointer.set

set values on an object

	var data = {
		parent: {
			children: [
				{
					title: "title of child"
				}
			]
		}
	};

	pointer.set(data, "#/parent/children/1", {title: "second child"});
	console.log(data.parent.children.length); // 2

pointer.delete

delete properties or array items

	pointer.delete(data, "#/parent/arrayOrObject/1");

Helpers

pointer.join

pointer.join joins all arguments to a valid json pointer:

	var key = "child";
	var target = pointer.join("parent", key, "title"); // "#/parent/child/title"