Skip to content

Curried function that calls `JSON.parse` on provided input returning either the parsed JSON or the specified default value if the data fails to parse as valid JSON instead of throwing a `SyntaxError`.

License

Notifications You must be signed in to change notification settings

wilmoore/json-parse.js

Repository files navigation

json-parse

Curried function that calls JSON.parse on provided input returning either the parsed JSON or the specified default value if the data fails to parse as valid JSON instead of throwing a SyntaxError.

Build Status Code Climate js-standard-style

npm install json-parse --save

You can also use Duo, Bower or download the files manually.

npm stats

npm NPM downloads David

Overview

Similar to try { return JSON.parse } … but more functional and compositionally friendly.

API Example

Basic
var parse = require('json-parse')

parse([])('[1,2,3]')
//=> [ 1, 2, 3 ]

parse([])('[1,2,3')
//=> []
Pointfree Style
var parse = require('json-parse')

Promise.resolve('[1,2,3]')
.then(parse([]))
.then(sum)
//=> 6

Promise.resolve(undefined)
.then(parse([]))
.then(sum)
//=> 0

API

parse(defaultValue, data)

arguments
  • defaultValue (*) Default value to return if given data does not parse as valid JSON.
  • data (*) Data to parse as JSON.
returns
  • (*) JavaScript value corresponding to parsed data.

Alternatives

Contributing

SEE: contributing.md

Licenses

GitHub license

About

Curried function that calls `JSON.parse` on provided input returning either the parsed JSON or the specified default value if the data fails to parse as valid JSON instead of throwing a `SyntaxError`.

Resources

License

Stars

Watchers

Forks

Packages

No packages published