的JavaScript:深拷贝和清除对象

问题描述:

公正地分享了一段代码,如果你是在同一个情况下,我会很有用。小心当你的对象包含的功能,他们也将被清除(在我的情况下,我没有任何功能,所以我没有真正管理案件)!的JavaScript:深拷贝和清除对象

在我来说,我需要在数据库中(深)复制JSON对象创造出许多国际化的文档(MongoDB中)(每种语言,〜15)。译员将能够填写新的空JSON,然后我将能够计算进度,以了解翻译是否以100%完成。

我在这里发布代码,以了解在ES6-7中是否有更好的解决方案(这是生产代码和应用程​​序的一个非常重要的部分),或者在深度复制和清除同一时间。

+0

能否请您格式化您的问题部分更像是指出你正在试图做的这是什么问题? – Li357

+0

@AndrewLi我觉得现在好多了,让我知道如果你没事的话!感谢您的反馈意见。 –

+0

@AndrewLi对不起,有人喜欢没有评论downvote然后.. –

这里是我的解决方案:

const obj = { 
 
    champ1: 'test', 
 
    champ2: 'test', 
 
    champ3: { 
 
     ch: 'test', 
 
     test: 'test' 
 
    } 
 
} 
 

 
function copyAndClearObject (obj) { 
 
    if (!obj) return 
 
    
 
    let json = {} 
 

 
    for (const [key, value] of Object.entries(obj)) { 
 
    if (value instanceof Object) { 
 
     json[key] = copyAndClearObject(value) 
 
    } else { 
 
     json[key] = null 
 
    } 
 
    } 
 

 
    return json 
 
} 
 

 
console.log(copyAndClearObject(obj))