zoukankan      html  css  js  c++  java
  • 解决 堆栈 出现的父对象和子对象相关联的问题 (深拷贝)

    // 解决 堆栈 出现的父对象和子对象相关联的问题 (三种方法)
    // 深拷贝
        function dishesStackHandle(person, current) {
            var current = current || {};    
            for (var i in person) {
                if (typeof person[i] === 'object') {
                    if (i == 'null' || i == null || person[i] == null) {
                        current[i] = {};
                    } else {
                current[i] = (person[i].constructor === Array) ? [] : {};
            }
                dishesStackHandle(person[i], c[i]);
                } else {
                    current[i] = person[i];
                }
            }
            return current;
        }
    //递归拷贝
    function deepCopy(obj) {
        var result = Array.isArray(obj) ? [] : {};
        for (var key in obj) {
            if (obj.hasOwnProperty(key)) {
                if (typeof obj[key] === 'object') {
                    result[key] = deepCopy(obj[key]); //递归复制
                } else {
                    result[key] = obj[key];
                }
            }
        }
        return result;
    }
    var syb = Symbol('obj');
    var person = {
       name :'tino',
       say: function(){
          console.log('hi');
       },
       ok: syb,
       un: undefined
    }
    var copy = JSON.parse(JSON.stringify(person))
    // copy
    // {name: "tino"}
    一辈子很短,努力的做好两件事就好;第一件事是热爱生活,好好的去爱身边的人;第二件事是努力学习,在工作中取得不一样的成绩,实现自己的价值,而不是仅仅为了赚钱;
  • 相关阅读:
    react-native-code-push进阶及实践小结
    Redux 基础
    iOS启动图异常修复方案 -(baidu)
    pod init
    Texture的异步渲染和布局引擎
    iOS 12.1 Tabbar 跳动Bug
    基本绘图的几种方式
    OC 小代码块
    OC基础--类的本质
    OC基础--构造方法 id类型
  • 原文地址:https://www.cnblogs.com/yangsg/p/10148505.html
Copyright © 2011-2022 走看看