javascript深度克隆的方法

1.通过json的方式克隆

let obj={a:"123",b:"sad"}

let clone_obj= JSON.parse(JSON.stringify(obj))
2.通过循环遍历的方式
function deepClone(obj) {
    let newObj = Array.isArray(obj) ? [] : {}
    if (obj && typeof obj === "object") {
        for (let key in obj) {
            if (obj.hasOwnProperty(key)) {
                newObj[key] = (obj && typeof obj[key] === 'object') ? deepClone(obj[key]) : obj[key];
            }
        }
    } 
    return newObj
}
const newObj = deepClone(oldObj));
3.通过_.cloneDeep()克隆
let obj = [{ 'a': 1 }, { 'b': 2 }];
 
let clone_obj =_.cloneDeep(obj)

 

posted @ 2021-12-02 18:33  银河游鱼  阅读(131)  评论(0)    收藏  举报