React 中深拷贝数组可以使用 JavaScript 内置的
slice
方法或者
concat
方法,它们都可以创建一个新的数组副本。例如:
const originalArray = [1, 2, 3];
const copiedArray = originalArray.slice();
const originalArray = [1, 2, 3];
const copiedArray = [].concat(originalArray);
如果数组中包含引用类型的元素,则需要使用深拷贝来创建副本,可以使用 JSON.parse(JSON.stringify(originalArray))
。
但是,该方法不能处理循环引用的对象,因此可以使用其他库,如 lodash
的 cloneDeep
方法来实现深拷贝。
const _ = require('lodash');
const originalArray = [1, 2, {a: 'b'}];
const copiedArray = _.cloneDeep(originalArray);