高级前端js【Q757】如何解决深拷贝问题中的循环引用

如何解决深拷贝问题中的循环引用

更多描述 例:

const o = { a: null };
 
o.a = o;

Issue 欢迎在 Gtihub Issue 中回答此问题: Issue 813

Author 回答者: echoustintian

正常的深拷贝,加一个 Map 记录深拷贝时遍历的属性值,如果两个属性值重复了且这个属性值为引用,那么就不去遍历这个对象的属性