javascript对象深拷贝。

来源:互联网 发布:主机屋域名如何解析 编辑:程序博客网 时间:2024/05/22 03:36

原理是就遍历对象所有属性,result[key] = typeof obj[key]===’object’? deepCopy(obj[key]): obj[key];这句很关键,因为不知道对象的属性是否为对象,如果是对象则必须要递归调用本身才可以进行深度拷贝。

function deepCopy(obj) { var result={};  //对象容器用户存储拷贝对象并返回for (var key in obj) {      //判断对象属性是否为对象,如果是对象则递归调用,如果不是则复制属性      result[key] = typeof obj[key]===’object’? deepCopy(obj[key]): obj[key];   }    return result; }
0 0
原创粉丝点击