$ npm install circular
Tiny utility to safely stringify objects with circular references.
Replace all circular references with the string [Circular]
;
var circular = require('circular');
var obj = {}; var child = {parent: obj}; obj.child = child;
var str = JSON.stringify(obj, circular());
// => {"child":{"parent":"[Circular]"}}
If you prefer you can pass an alternative string to use:
var str = JSON.stringify(obj, circular('#ref'));
Or a function that returns a string:
function ref(value){return '' + value};
var str = JSON.stringify(obj, circular(ref));
As of version 1.0.4
you can also pass an additional boolean that will convert function references to strings, useful for converting javascript modules to couchdb
design documents.
var str = JSON.stringify(obj, circular(null, true));
Everything is MIT. Read the license if you feel inclined.
© 2010 - cnpmjs.org x YWFE | Home | YWFE