4.0.0 • Published 9 years ago

safe-json-parse v4.0.0

Weekly downloads
810,215
License
-
Repository
github
Last release
9 years ago

safe-json-parse

build status dependency status

Parse JSON safely without throwing

Example (callback)

var safeParse = require("safe-json-parse/callback")

safeParse("{}", function (err, json) {
    /* we have json */
})

safeparse("WRONG", function (err) {
    /* we have err! */
})

Example (tuple)

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)

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

rascal-electronvideoyj.jsvideojs-yjvideo.js-catenoidunblock-block-save-variables@infinitebrahmanuniverse/nolb-saf@everything-registry/sub-chunk-2700npm-shrinkwrapmiddleware-json-parseplayer-version-inserterpotter@dminc/video.jsblock-sequence-mysqlblock-sequence-postgresblock-sequence-redisblock-sequence-mongobuild-changelogbody@cutting-mat/widgets@cutting-mat/widgets-v3@vipstorage/video.js@backpackjs/core-nextjs@backpackjs/filesystem@backpackjs/sync@backpackjs/transforms@bitwave/video.js@caiqueportela/videoyoutube-dataaxios-yet-another-proxy-fixaxo-shrinkwrapxml-to-json-utilyojiang-video.jsuexio.test.video.jsang.video.js@uexio/video.jstrello-usable-json@syhcom/video.js@xdml/video.js@gkatsev/videojs-release-testhashdo-webhm-videojshs-new-video.jshttqjust-login-corelc.video.jslagadsdklame-jsonhyperbahnmultiplex-rpc-streamslockfile-diffraynos-lockfile-diffrascalswoletinymce-plugin-toytinkr-clishplayer@my-videojs/video.jsselect2-selectalltchanneltchannel-litetcurltcplayer.js@edoctor/backend-utils@shrijal/video.js@silvermine/video.jstwitterfollowerexplorervideojs-yojiangvideojs-jogwheelvideo.jsvideo.js-dat0825video.js-enhancedvideo.js-kiswe-webvttvideo.js-saintsvideo.js-ucvideo2.jsvchat@th507/npm-shrinkwrap@zramil/video.jswow.js-juzi@hola.org/video.jsconfig-requesteaze-requesteasyplayer-my@glezsosa/videocontrolport-perfconfabulousdynamics-crm-restdrive-video-jsenhanced-video.jsempplayer2-devcssesc-wbgedoctor-utilities@jienco/video.js@imfs/video.js@imagespark/video.js@isatti/video.js@klyukin/video.js@jontsnz/video.jsdfeuk-frontenddfeuk-frontend-manual
4.0.0

9 years ago

2.0.0

10 years ago

1.0.1

10 years ago

0.1.1

11 years ago