1. Cuatro métodos de copia profunda de matriz
1. Utilice JSON.parse() y JSON.stringify():
const arr1 = [1, 2, 3, 4];
const arr2 = JSON.parse(JSON.stringify(arr1));
2. Utilice Array.from():
const arr1 = [1, 2, 3, 4];
const arr2 = Array.from(arr1);
3. Utilice el operador de propagación:
const arr1 = [1, 2, 3, 4];
const arr2 = [... arr1];
4. Utilice Array.map():
const arr1 = [1, 2, 3, 4];
const arr2 = arr1.map(elemento => elemento);
Dos, 4 métodos de copia profunda de objetos
1. Utilice JSON.parse() y JSON.stringify():
// primero define un objeto
sea obj = {
nombre: 'tom',
edad: 18
};
// implementar copia profunda
let deepCopy = JSON.parse(JSON.stringify(obj));
2. Utilice Object.assign():
// definir un objeto
sea obj = {
nombre: 'tom',
edad: 19
};
// copia profunda
let deepCopy = Object.assign({}, obj);
3. Utilice el operador de propagación de ES6:
// definir un objeto
sea obj = {
nombre: 'tom',
edad: 20
};
// copia profunda
let deepCopy = {...obj};
4. Usa cloneDeep() de lodash:
// definir un objeto
sea obj = {
nombre: 'tom',
edad: 21
};
// importar lodash
importar _ desde 'lodash';
// copia profunda
let deepCopy = _.cloneDeep(obj);