JavaScript性能优化--innerHTML的感悟
来源:互联网 发布:cs5463数据手册 编辑:程序博客网 时间:2024/05/20 22:29
从后台获取JSON(大量表格数据),到前台展示的方式有几种,效率是不同的。
目前自己使用最多的就是利用字符串的+=方式实现(如通话记录的列表)
参考实验:
目标:生成一个2000*5的表格,每个单元格的内容是行号+逗号+列号
方法一:使用createElement生成表格,使用insertRow和insertCell方法生成行列,单元格的内容使用innerHTML属性进行填充。(最慢)
方法二:使用createElement生成表格,使用CreateElement方法生成行列,单元格的内容使用了createTextNode方法填充。
方法三:拼接表格innerHTML属性的字符串,使用字符串 += 操作符链接字符串(次慢)
方法四:拼接表格innerHTML属性的字符串,各个字符串追加数组里面,最后调用数组的join方法生成目标字符串。
运行时间比较:
方法运行时间(ms)方法一93037方法二3341方法三2795方法四500
function createTable4() { var data = new Array(); data.push('<table border=1><tbody>'); for (var i = 0; i < 2000; i++) { data.push('<tr>'); for (var j = 0; j < 5; j++) { data.push('<td>' + i + ',' + j + '</td>');// 循环累加采用数组的push方法,比字符串的+=效率高! } data.push('</tr>'); } data.push('</tbody><table>'); document.getElementById('table1').innerHTML = data.join(''); // 使用join生成最终字符串 }
测试运行时间的方法:
function showFunctionRunTime(f) { var t1 = new Date(); f(); var t2 = new Date(); alert(t2 - t1); //求时间差! } showFunctionRunTime(createTable4);
- JavaScript性能优化--innerHTML的感悟
- 浅析 innerHTML 性能优化的原理
- innerHTML的性能问题
- javaScript的性能优化
- javascript的性能优化
- javascript的innerHTML
- JavaScript innerHTML的用法
- 优化JavaScript脚本的性能
- javascript脚本的性能优化
- javascript的一些性能优化
- javascript的一些性能优化
- 关于JavaScript的性能优化
- javascript 中的innerHTML的用法
- javascript 中的innerHTML的用法
- javascript 中的innerHTML的用法
- 前端性能优化:DocumentFragments或innerHTML取代复杂的元素注入
- 前端性能优化:DocumentFragments或innerHTML取代复杂的元素注入
- Web前端性能优化——DocumentFragment或innerHTML取代复杂的元素注入
- 日本游戏开发公司谈:如何在激烈的APP世界立足
- Windows下配置Cassandra
- java IO流之二 IO流操作
- Linux操作系统内核启动参数详细解析 [转]
- jQuery基础教程-第6章练习
- JavaScript性能优化--innerHTML的感悟
- Subversion快速入门教程
- 【又是转载】关于批处理
- 微信验证开发者代码,解决微信请求URL超时,你的服务器没有正确响应Token验证,请阅读消息接口使用指南
- 分布式和集群
- Apache Derby -上手2
- Spring中@Autowired注解、@Resource注解的区别
- svn move修改名称
- netbeans莫名报错误