zoukankan      html  css  js  c++  java
  • 深拷贝案例

     3.深拷贝:如果对象中的属性值又是一个引用数据类型,浅拷贝也能实现,浅拷贝还是把引用数据类型的内存地址赋值给空的对象的一个属性,深拷贝将属性值也一个一个遍历赋值;冒充对象继承就是拷贝继承

      案例:

      var obj={

        name:"张三",

        arr=[12,20,36]

        sex:{

          y:12,

          x:24

        }

      }

      var obj2={}

      function extend(oldobj,newobj){

        for(var key in oldobj){

          var item=oldobj[key]    //遍历每个属性的属性值

          if(item instanceof Array){

            newobj[key]=[]

            extend(item,newobj[key])

          }

          else if(item instanceof Object){

            new[key]={}

            extend(item,newobj[key])

          }

          else{

            newobj[key]=item

          }

        }

      extend(obj,obj2)

  • 相关阅读:
    51nod 1051【基础】
    HDU5971【瞎搞】
    Lightoj1018 【状压DP】
    HDU2604【矩阵快速幂】
    HDU1501【简单DP】
    HDU3555【数位DP】
    Lightoj1037【状压DP】
    51nod 1099【贪心】
    HDU5950【矩阵快速幂】
    51nod 1049【经典】
  • 原文地址:https://www.cnblogs.com/shangjun6/p/10375047.html
Copyright © 2011-2022 走看看