isJSON
Test if a value is a parseable JSON string.
Usage
var isJSON = require( '@stdlib/assert/is-json' );
isJSON( value )
Tests if a value
is a parseable JSON string
.
var value = '{"a":5}';
var bool = isJSON( value );
// returns true
Notes
The implementation validates that the input
value
is astring
literal. For all other inputs, the method returnsfalse
.The implementation validates that a
string
begins with either[
or{
and ends with a corresponding]
or}
, respectively. Hence, the method will returnfalse
for the followingstrings
, despiteJSON.parse
accepting their input:'<number>'
(e.g.,'5'
)'<boolean>'
(e.g.,'true'
)'null'
The implementation wraps
JSON.parse
inside atry/catch
. Hence, this function cannot be optimized by the compiler during runtime. Nevertheless, using this function is better than embedding atry/catch
within a largerfunction
which could be optimized in the absence of atry/catch
.
Examples
var isJSON = require( '@stdlib/assert/is-json' );
var bool = isJSON( '{"a":5}' );
// returns true
bool = isJSON( '{a":5}' );
// returns false