DOM碎片化
来源:互联网 发布:张佳玮 知乎 编辑:程序博客网 时间:2024/06/06 08:34
下面的代码看起来有点神经质,仅仅是个demo
<!DOCTYPE html><html><head> <meta charset="utf-8" /> <title>文档碎片性能测试——普通方法</title> <script> window.onload = function() { var oBtn = document.getElementById("btn1"); var oUl = document.getElementById("ul1"); var iStart = new Date().getTime(); //开始执行的时间 oBtn.onclick = function() { //普通追加 for (var i = 0; i < 1000; i++) { //使用for循环创建100000个li节点,并一个个的挂载在ul下面 var oLi = document.createElement("li"); oUl.appendChild(oLi); } console.log(new Date().getTime() - iStart); //打印出最后这个程序耗费的而时间 } } </script></head><body> <input id="btn1" type="button" value="普通" /> <ul id="ul1"> <li>li</li> </ul></body></html>
碎片化:
<!DOCTYPE html><html><head> <meta charset="utf-8" /> <title>文档碎片性能测试</title> <script> window.onload = function() { var oBtn = document.getElementById("btn1"); var oUl = document.getElementById("ul1"); var iStart = new Date().getTime(); oBtn.onclick = function() { //文档碎片方式 var oFrag = document.createDocumentFragment(); //建立一个文档对象,作为新增节点的临时容器,最后将这个容器连的内容直接挂载在父节点ul下面。 for (var i = 0; i < 10000; i++) { var oLi = document.createElement("li"); oFrag.appendChild(oLi); } oUl.appendChild(oFrag); console.log(new Date().getTime() - iStart); } } </script></head><body> <input id="btn1" type="button" value="碎片" /> <ul id="ul1"> <li>li</li> </ul></body></html>
碎片化就是操作一个文档对象,挂载结束后再一次性append到实际DOM上面去,理论上性能比多次操作dom高,个人感觉与拼字符串异曲同工
0 0
- DOM碎片化
- dom操作之文档碎片
- 碎片化
- javascript Dom: documentFragment 文档碎片对象
- javascript之文档碎片,文档碎片在理论上可以提高DOM操作的执行效率
- Android 碎片化问题
- 内存碎片序列化
- 【Android】碎片化初探
- Android碎片化问题
- Fragment的碎片化
- Android 分辨率 碎片化
- 碎片化管理
- Android 应用碎片化
- 碎片
- 碎片
- 碎片
- 碎片
- 碎片
- 观察者模式
- SecureCRT中文乱码解决方法
- Caused by: com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Unknown column 'XX' in
- css3 2d转换3d转换以及动画的知识点汇总_1
- 实体类里面过滤掉不是服务器返回的字段
- DOM碎片化
- OpenWRT中使用无线网卡做中继器与AP热点
- myeclipse2016创建maven项目第一行报错 Failure to transfer com.thoughtworks.xstream:xstream:jar:1.3.1
- 自定义View 篇四《低仿QQ测拉删除》
- 缓存
- Filter介绍
- RDVTabBarController--可自由定制的iOS底部导航控件
- 读《浪潮之巅》感想(3)
- 不错的linux驱动总结