You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
83 lines
1.6 KiB
83 lines
1.6 KiB
# safe-json-parse
|
|
|
|
[![build status][1]][2] [![dependency status][3]][4]
|
|
|
|
<!-- [![browser support][5]][6] -->
|
|
|
|
Parse JSON safely without throwing
|
|
|
|
## Example (callback)
|
|
|
|
```js
|
|
var safeParse = require("safe-json-parse/callback")
|
|
|
|
safeParse("{}", function (err, json) {
|
|
/* we have json */
|
|
})
|
|
|
|
safeparse("WRONG", function (err) {
|
|
/* we have err! */
|
|
})
|
|
```
|
|
|
|
## Example (tuple)
|
|
|
|
```js
|
|
var safeParse = require("safe-json-parse/tuple")
|
|
|
|
var tuple1 = safeParse("{}")
|
|
var json = tuple1[1] /* we have json */
|
|
|
|
var tuple2 = safeparse("WRONG")
|
|
var err = tuple2[0] /* we have err! */
|
|
|
|
var tuple3 = safeParse(something)
|
|
if (tuple3[0]) {
|
|
var err = tuple3[0]
|
|
// handle err
|
|
} else {
|
|
var json = tuple3[1]
|
|
// handle json
|
|
}
|
|
```
|
|
|
|
## Example (result)
|
|
|
|
```js
|
|
var Result = require('rust-result')
|
|
var safeParse = require('safe-json-parse/result')
|
|
|
|
var result1 = safeParse("{}")
|
|
var json = Result.Ok(result1) /* we have json */
|
|
|
|
var result2 = safeparse("WRONG")
|
|
var err = Result.Err(result2) /* we have err! */
|
|
|
|
var result3 = safeParse(something)
|
|
if (Result.ifErr(result3)) {
|
|
var err = Result.Err(result3)
|
|
// handle err
|
|
} else if (Result.ifOk(result3)) {
|
|
var json = Result.Ok(result3)
|
|
// handle json
|
|
}
|
|
```
|
|
|
|
## Installation
|
|
|
|
`npm install safe-json-parse`
|
|
|
|
## Contributors
|
|
|
|
- Raynos
|
|
|
|
## MIT Licenced
|
|
|
|
|
|
[1]: https://secure.travis-ci.org/Raynos/safe-json-parse.png
|
|
[2]: https://travis-ci.org/Raynos/safe-json-parse
|
|
[3]: https://david-dm.org/Raynos/safe-json-parse.png
|
|
[4]: https://david-dm.org/Raynos/safe-json-parse
|
|
[5]: https://ci.testling.com/Raynos/safe-json-parse.png
|
|
[6]: https://ci.testling.com/Raynos/safe-json-parse
|