在前端使用JSON.stringify(obj)报的错误
原因是在obj中存在有引用自己的情况,造成循环引用错误
解决方法:添加处理函数,作为stringify的第二个参数传进去
1. 处理函数(代码格式自调)
const getCircularReplacer = () => { const seen = new WeakSet(); return (key, value) => { if (typeof value === 'object' && value !== null) { if (seen.has(value)) { return; } seen.add(value); } return value; };};
2. 作为第二个参数传入
JSON.stringify(obj, getCircularReplacer())