Во-первых, глубокая копия объекта несколько методов
1. С помощью глубокого копирования реализована рекурсивно
1 Функция deepClone (OBJ) { 2 пусть objClone = Array.isArray (OBJ)? []: {}; 3 , если (объект && TypeOf OBJ === 'объект' ) { 4 для (ключ пусть в OBJ) { 5 , если (OBJ [ключ] && TypeOf OBJ [ключ] === 'объект' ) { 6 objClone [ключ] = deepClone (OBJ [ключ]); 7} еще { 8 objClone [ключ] = OBJ [ключ] 9 } 10 } 11 } 12 возврата objClone; 13}
2. Для достижения глубокого копирования объекта с помощью JSON
Функция deepClone2 (OBJ) { пусть _obj = JSON.stringify (OBJ), Возвращение JSON.parse (_obj); }
Примечание: методы объекта не могут достигнуть глубокой копии
3. Object.assign () Копировать
Примечание: Когда объект будет в глубокой атрибуте копии;
Когда несколько этапов атрибутов объекта, два свойства неглубокая копия
Во-вторых, глубокая копия массива несколькими способами