WebAPI中,document.write() 、 innerHTML与document.createElement() 三种创建元素方式的区别:
1. document.write() 创建元素 如果页面文档流加载完毕,再调用这句话会导致页面重绘(即其他元素全部消失,重新创建一个只有这个新建元素的页面)
2. innerHTML 创建元素
3. document.createElement() 创建元素
总结:
- document.write()是直接将内容写入页面的内容流,文档执行完毕,则它会导致页面重绘
- innerHTML字符串拼接方式效率特别低,
- 但innerHTML数组方式(数组ioin方式拼接)创建多个元素效率更高,结构稍微复杂一点
createElement方式创建多个元素效率稍低一点,但是结构更清晰
ps:面试中问到的innerHTML与createElement创建方式的区别:可以从innerHTML是采用字符串拼接还是数组形式拼接和其结构来说