Skip to content

Instantly share code, notes, and snippets.

@vv13
Created November 30, 2021 05:20
Show Gist options
  • Save vv13/07cdff2043607160fee7e0a98b4799d7 to your computer and use it in GitHub Desktop.
Save vv13/07cdff2043607160fee7e0a98b4799d7 to your computer and use it in GitHub Desktop.
[JS] deepClone
function deepCopySimple(obj) {
return JSON.parse(JSON.stringify(obj));
}
function deepClone(obj) {
if (typeof obj !== 'object') return obj;
const newObj = obj instanceof Array ? [] : {};
for (let key of Object.keys(obj)) {
if (typeof obj[key] !== 'object') {
newObj[key] = obj[key];
} else {
newObj[key] = deepClone(obj[key]);
}
}
return newObj;
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment