关于innerHTML以及html2dom
使用innerHTML或者insertAdjacentHTML 创建元素的时候能给我们带来很大的方便,为domNode 赋予innerHTML 属性,在插入大量的HTML的时候,使用innerHTML要比多次创建dom效率高的多,这是因为在设置innerHTML 时候,浏览器会创建一个innerHTML解析器,这个解析器是在浏览器级别的代码(通常是C++编写的)基础上运行的,因此执行要比Javascript快得多。
不可避免地,创建和销毁HTML解析器也会带来性能的损失,因而应该将设置innerHTML的次数要尽量少,避免浏览器多次的创建HTML解析器,另外如果innerHTML有用户输入或者来自第三方网站,容易造成脚本的攻击,比如包含
