Stringify javascript objects and retrieve with eval
.
This library IS NOT designed to replace JSON.stringify
. Unless you truly understand what this library does, I suggest you use JSON.stringify
in the first place.
npm install node-stringify --save
var stringify = require('node-stringify');
console.assert(stringify(123) === '123');
console.assert(stringify('abc') === '\'abc\'');
console.assert(stringify(null) === 'null');
console.assert(stringify(undefined) === 'undefined');
console.assert(stringify(new Date(1000)) === 'new Date(1000)');
console.assert(stringify(function (a,b,c) {}) === '(function (a,b,c) {})');
console.assert(stringify([1, 2, 3]) === '[1,2,3]');
// The parenthesis is to make the result work with `eval`
console.assert(stringify({a: 1, b: 2}) === '({a:1,b:2})');
console.assert(stringify({a: 1, b: [2, 3]}) === '({a:1,b:[2,3]})');
// You can turn off the parenthesis too
console.assert(stringify({a: 1, b: 2}, {parenthesis:false}) === '{a:1,b:2}');
console.assert(stringify({a: 1, b: [2, 3]}, {parenthesis:false}) === '{a:1,b:[2,3]}');
- null
- undefined
- number
- string
- date
- regexp
- function
- array
- object
- The result of
node-stringify
can be retrieved directly usingeval
(Please be aware thateval
may be insecure).
- Not support objects with circular references or too deeply nested(implemented in a recursive way).
MIT License.