Skip to content

如何实现深拷贝? #39

@Rosamand

Description

@Rosamand

深拷贝的作用在于能够实现对于数组和对象的拷贝,不影响拷贝后数据对原数据造成的影响。
实现函数:
function deepCopy(p,c) { var c=c||{};//容错处理 for(var i in p){ if(typeof p[i]==='object'){//引用类型的数据单独处理 c[i]=(p[i].constructor===Array)?[]:{}; deepCopy(p[i],c[i]);//递归处理引用类型数据 }else{ c[i]=p[i];//值类型的数据直接进行拷贝 } } return c; }
我理解的也不是特别明白,希望各位能够提出一些宝贵的见解
具体的可以参考:https://m.jb51.net/article/91906.htm

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions