Skip to content

ashphy/jsonpath-js

Repository files navigation

jsonpath-js

GitHub License NPM Version Link Checker

Warning

This library is still in its initial development stage, so please be aware that the API is subject to change.

An implementation of RFC 9535 JSONPath

Try Online

You can test JSONPath expressions online at https://jsonpath.com/.

Features

  • 100% Compatible with RFC 9535

Supported Runtimes

  • Node v20+
  • Deno v2+
  • Bun v1.2+

Install

npm install jsonpath-js

Usage

import { JSONPathJS } from "jsonpath-js";

const query = new JSONPathJS("$.users[*].name");
const result = query.find({
  users: [{ name: "John Doe" }, { name: "Jane Doe" }],
});

// [ 'John Doe', 'Jane Doe' ]
console.log(result);


const pathResult = query.paths({
	users: [{ name: "John Doe" }, { name: "Jane Doe" }],
});

// [
// 	{ value: "John Doe", path: "$['users'][0]['name']" },
// 	{ value: "Jane Doe", path: "$['users'][1]['name']" },
// ];
console.log(pathResult);

Contributing

Please read the contributing guide.

About

An implementation of JSONPath

Resources

License

Security policy

Stars

Watchers

Forks

Packages

No packages published