在Angular 2 + TypeScript中深度复制数组

乔尔·阿尔梅达(Joel Almeida):

我有一个作为输入的对象数组。让我们称之为吧content

当尝试深复制它时,它仍然具有对先前数组的引用。

我需要复制该输入数组,并更改复制部分的一个属性。

很久以来,我尝试了不成功的其他方法。

ES6方式:

public duplicateArray() {
  arr = [...this.content]
  arr.map((x) => {x.status = DEFAULT});
  return this.content.concat(arr);
}

slice方式:

public duplicateArray() {
  arr = this.content.slice(0);
  arr.map((x) => {x.status = DEFAULT});
  return this.content.concat(arr);
}

在这两个对象中,数组中的所有对象都具有status: 'Default'

在Angular 2中深度复制数组的最佳方法是什么?

YD1m:

检查一下:

  let cloned = source.map(x => Object.assign({}, x));

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章