【總結】深拷貝的幾種實現方式


深拷貝幾種實現方式:

1、常規Js方法

function extendDeepCopy(obj,newobj){
    var newobj=newobj||{};
    for(var i in obj){
        if(typeof obj[i]=='object'){
            newobj[i]=(obj[i].constructor==="Array")?[]:{};
            extendDeepCopy(obj[i],newobj[i]);
        }else{
            newobj[i]=obj[i];
        }
    }
    return newobj;
}

2、jquery方法

jQuery.extend(true,target,obj);

3、json方法

var cloneObj=JSON.parse(JSON.stringify(obj));

缺點:丟失constructor,RegExp無法實現


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM