牛骨文教育服务平台(让学习变的简单)
博文笔记

nodejs 保存数组/对象,对其进行处理,而不影响原数组/对象

创建时间:2016-04-20 投稿人: 浏览次数:173
第一种方法:
/**
 * @brief 克隆一个对象
 * @date 2015/12/16
 * @param[in] obj 传入的对象
 * @par 代码来自:http://kingwell-leng.iteye.com/blog/1675694
 * @return 克隆后的对象
 */
 function clone(obj){
     var o;
     if (typeof obj == "object") {
         if (obj === null) {
             o = null;
         } else {
             if (obj instanceof Array) {
                 o = [];
                 for (var i = 0, len = obj.length; i < len; i++) {
                     o.push(clone(obj[i]));
                 }
             } else {
                 o = {};
                 for (var j in obj) {
                     o[j] = clone(obj[j]);
                 }
             }
         }
     } else {
         o = obj;
     }
     return o;
 }

第二种方法:

缺点是不能拷贝value 为function的对象:


声明:该文观点仅代表作者本人,牛骨文系教育信息发布平台,牛骨文仅提供信息存储空间服务。