JSPM

  • ESM via JSPM
  • ES Module Entrypoint
  • Export Map
  • Keywords
  • License
  • Repository URL
  • TypeScript Types
  • README
  • Created
  • Published
  • Downloads 13682
  • Score
    100M100P100Q129272F
  • License MIT

Unbelievable and Modern JSON interface.

Package Exports

  • json-future

This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (json-future) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

Readme

JSON Future

Last version Build Status Coverage Status Dependency status Dev Dependencies Status NPM Status Donate

Unbelievable and Modern JSON interface. Prollyfills propositions for ECMAScript 7.

Prollyfill: A polyfill for a not yet standardized API.

Why

  • High level methods for manipulate JSON files (stringify, parse, load and save).
  • Backward compatibility with JSON Object in Node or Browser.
  • Async support (Node Callback style and Promise).

JSON Future is based into a set of cool libraries to handle JSON, but some of this libraries uses promises or callback style. This library adds an extra layer to call these libraries uniformly.

Install

npm install json-future --save

Usage

var jsonFuture = require('json-future')

Don't be afraid to replace for the default JSON object. The library is specially designed for be compatible and don't break your code:

JSON = require('json-future')

Also you can do this action using the register helper:

require('json-future/register')

API

In async methods, if you don't provide a callback for node style, then the method return a Promise.

.stringify(input, [replacer], [space])g

.stringifyAsync(input, [replacer], [space], [cb])

Creates the string version of the input.

.parse(input, [reviver], [filename])

.parseAsync(input, [reviver], [filename], [cb])

Creates the object version of the input.

.load(filepath)

.loadAsync(filepath, [cb])

Returns the parsed JSON.

.save(filepath, data, [options])

.saveAsync(filepath, data, [options], [cb])

Stringify and write JSON to a file atomically.

options

indent

Type: string, number Default: \t

Indentation as a string or number of spaces. Pass in null for no formatting.

sortKeys

Type: boolean, function Default: false

Sort the keys recursively. Optionally pass in a compare function.

replacer

Type: function

Passed into JSON.stringify.

mode

Type: number Default 438 (0666 in octal)

Mode used when writing the file.

License

MIT © Kiko Beats