如何快速实现dom的深克隆
背景
最近在做项目的时候,需要用到原生dom操作,此时此刻原生dom的记忆开始攻击我的大脑,我是谁,我在做什么,忘的干干净净。回顾往昔,在jq的时代,被dom统治的恐惧。好了废话不多说,直接上干货。
const deepCloneELement = (
dom: HTMLElement | string
): HTMLElement => {
let div: HTMLDivElement | null =
document.createElement("div");
const str =
typeof dom == "string"
? dom
: dom.outerHTML;
div.innerHTML = str;
const returnDom = div.childNodes[0];
// console.log(str, "div");
div = null; // 通过标记法进行垃圾回收
return returnDom as HTMLElement;
};