javascript深层克隆无法正常工作

javascript深层克隆无法正常工作,javascript,arrays,deep-copy,Javascript,Arrays,Deep Copy,我有一个类似的数组 const array = [ {name:'jack', age:12, sex:'male'} {name:'mary', age:16, sex:'female'} {name:'harry', age:22, sex:'male'} ] 因此,我必须从中深度克隆另一个阵列,我想修改从原始阵列克隆的第二个阵列,而不修改原始阵列 我已经尝试了[…array]或array.slice[0],甚至我尝试了lodash的.deepClone,或JSON.parse(JSON.

我有一个类似的数组

const array = [
{name:'jack', age:12, sex:'male'}
{name:'mary', age:16, sex:'female'}
{name:'harry', age:22, sex:'male'}
]
因此,我必须从中深度克隆另一个阵列,我想修改从原始阵列克隆的第二个阵列,而不修改原始阵列


我已经尝试了
[…array]
或array.slice[0],甚至我尝试了lodash的
.deepClone
,或
JSON.parse(JSON.stringify(array))
不知何故,这一切都不起作用。我认为它们都能工作,因为概念是,如果更改原始数组,它将不会修改第二个数组。但在我的例子中,情况正好相反,我希望在不更改原始数组的情况下更改第二个数组。

JSON.parse(JSON.stringify(array))
必须工作。生成的数组不可能仍然引用原始数组。请向我们展示代码的这一部分,而不仅仅是你试图克隆的阵列。不清楚它怎么会不是这些方法的副本。您的实际测试用例是什么。显示不起作用的代码。@RandyCasburn我很确定
secondArray
仍将是对
array
的引用。如果是这样的话,深度克隆就不会那么困难了easy@JeremyThille-天哪-我完全误解了这个问题!当我看到您在第一条评论中指出的内容时,我想我被绊倒了。
[…array.map(data=>({…data}])]