码迷,mamicode.com
首页 > Web开发 > 详细

js 深拷贝

时间:2019-07-14 13:06:43      阅读:113      评论:0      收藏:0      [点我收藏+]

标签:com   func   src   col   遍历   简单   obj   技术   data   

1.数组简单拷贝,不改变原数组
技术图片

当数组的元素为复杂类型时,slice 不适用
技术图片

2.对象深拷贝

var copy = function deepCopy(data) {
  const newData = new data.constructor();  //保持继承链
  for (var k in data) {
    if (data.hasOwnProperty(k)){ //不遍历其原型链上的属性
      var val = data[k]
      newData[k] = typeof val === ‘object‘ ? deepCopy(val) : val;
    }
  }
  return newData;

}

 

js 深拷贝

标签:com   func   src   col   遍历   简单   obj   技术   data   

原文地址:https://www.cnblogs.com/hill-foryou/p/11183777.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!