В этом посте мы обобщим 2 простых способа Object Deep Clone.
Использование JSON
- Преобразуйте объект в строку с помощью
JSON.stringify()
. - Затем преобразуйте его обратно в Object обратно.
Плюсы
- Просто и легко
Минусы
- Не поддерживает
Function
,Array
,RegExp
,Date
и т. д.
Рекурсия
Плюсы
- Поддержка объектов, таких как
Object
,Array
иFunction
.
Минусы
- Может возникнуть проблема с производительностью, если объект вкладывает переменную на очень глубоком уровне.
2. Необходимо проверить многие типы (коды выше просто отметьте 3).