Skip to content

Instantly share code, notes, and snippets.

@autioch
Created September 17, 2017 17:49
Show Gist options
  • Save autioch/c28910c47b4013a75a23932732fab186 to your computer and use it in GitHub Desktop.
Save autioch/c28910c47b4013a75a23932732fab186 to your computer and use it in GitHub Desktop.
Stringify circular
module.exports = function stringifyCircular(obj) {
const cache = [];
return JSON.stringify(obj, (key, value) => {
if (typeof value === 'object' && value !== null) {
if (cache.indexOf(value) !== -1) {
// Circular reference found, discard key
return undefined;
}
// Store value in our collection
cache.push(value);
}
return value;
}, ' ');
};
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment