JavaScript對象的深拷貝和淺拷貝

對象的深拷貝和淺拷貝

// ES5 淺拷貝

Object.assign({}, conf)

只能拷貝一級,深層的源改變,目標也會跟着改變。

// 遞歸 深拷貝

function deepCopy(des, src) {
  for (var key in src) {
    if(typeof src[key] !== 'object') {
      des[key] = src[key];
    } else {
      des[key] = des[key] || {};
      deepCopy(des[key], src[key]);
    }
  }
  return des;
}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章