function deepCopy(obj, parent = null) {
let keys = Object.keys(obj),
if (_parent.originalParent === obj) {
return _parent.currentParent;
_parent = _parent.parent;
for (let i = 0; i < keys.length; i++) {
if (temp && typeof temp === 'object') {
// 递归执行深拷贝 将同级的待拷贝对象与新对象传递给 parent 方便追溯循环引用
result[key] = DeepCopy(temp, {