原文地址:http://www.9demo.com/archives/488
第一种:逐个字符串相加

var arr = ['item 1', 'item 2', 'item 3', ],
list = '';

for (var i = 0, l = arr.length; i < l; i++) {
list += '<li>' + arr[i] + '</li>';
}

list = '<ul>' + list + '</ul>';

这种最常见的,但是效率最低!代码逻辑相对来说复杂。
第二种:逐个 push 进数组

Code
var arr = ['item 1', 'item 2', 'item 3', ],
list = [];

for (var i = 0, l = arr.length; i < l; i++) {
list[list.length] = '<li>' + arr[i] + '</li>';
}

list = '<ul>' + list.join('') + '</ul>';

比上一种方法稍微快一些,但还是不够好…

第三种:直接join()

var arr = ['item 1', 'item 2', 'item 3', ];

var list = '<ul><li>' + arr.join('</li><li>') + '</li></ul>';

使用原生的方法(比如 join()),不管它后面是怎么实现的,一般都比其他方法快很多,而且代码非常简洁。

浏览器性能

每种方法是使用一个长度为 130 的数组来测试,其中每个元素的长度是多种多样的,防止浏览器对一定长度的字符串做特殊的优化;每种方法测试了 1000 次;下面的结果显示,执行完这 1000 次需要的时间:

转载于:https://www.cnblogs.com/Max-Gan/archive/2009/09/24/1573119.html

拼装html字符串的最快方法相关推荐

  1. python字符串换行的三种方式_Python:怎样拼装超长字符串和包含回车换行字符串...

    Python 中字符串可以使用单引号('--')或双引号("--")表示.反斜杠 \ 是转义字符.如果你不希望 \ 转义字符成特殊字符,可以在引号前添加 r 即可.如下所示: &q ...

  2. python随机生成小写字母表_用小写字母生成大随机字符串的最快方法

    下面是Python 3代码,它在0.28秒内生成1000000个"随机"小写字母(另请参见最后的0.11-秒解决方案:@Ashwini Chaudhary的问题代码在我的机器上需要 ...

  3. java遍历字符串字符_Java 遍历字符串中所有字符的最快方法

    小编典典 在我的AMDx64 8core和源1.8上,使用'charAt'和字段访问之间没有区别.看来jvm已经过充分优化,可以内联和精简任何'string.charAt(n)'调用. 这完全取决于S ...

  4. java 循环遍历字符串_遍历字符串中所有字符的最快方法

    第一个更新:在生产环境(不建议使用)中尝试此方法之前,请先阅读以下内容:http : //www.javaspecialists.eu/archive/Issue237.html 从Java 9开始, ...

  5. 电机不动 米兔机器人_【小米 米兔机器人使用总结】拼装|底座|背面|电机|机枪_摘要频道_什么值得买...

    小米 米兔机器人使用总结(拼装|底座|背面|电机|机枪) 机器人形态是我最开始拼装的一个形态,整个拼装我大概花了快6个小时,整个过程还是比较顺利的,原因之一就是提供的安装手册还是比较清楚比较容易看懂的 ...

  6. 10硬盘锁怎么解除_鉴定二手iPad是否拼装,扩容,隐藏ID锁的详细方法

    二手iPad产品仍有它的使用价值,网上也很多人在卖.很多网友经常问到怎么样鉴别二手iPad是否正品?这也跟你购买的渠道有很大关系,在网店购买的就要比较小心了,最好是能验机后才付款或者有问题可以退货.如 ...

  7. 无需转动魔方即可判断魔方拼装错误的完整方法

    jingui37@outlook.com / 2753657024@qq.com 1.前言 一个魔方被拆解后,重新随意拼装时,拼装出正确状态的概率有多大?如果出现了错误状态,那错误类型又有哪些?如何判 ...

  8. JAVA实现字符串反转(Reverse)的方法(没有最快,只有更快)

    字符串反转在Java程序笔试面试中经常遇到,程序出了满足设计需要外,往往我们还要考虑到性能及内存相关的问题,如果考虑到性能和内存相关的问题,在笔试或面试中更容易赢得考官的青睐. 不多说,给出我这边实现 ...

  9. 拼装sql_SQL优化最干货总结(2020最新版)

    前言 BATJTMD等大厂的面试难度越来越高,但无论从大厂还是到小公司,一直未变的一个重点就是对SQL优化经验的考察.一提到数据库,先"说一说你对SQL优化的见解吧?". SQL优 ...

  10. 拼装sql_2020最新最全面的SQL优化干货总结

    作者:_陈哈哈原文:https://sohu.gg/FGG98i BATJTMD 等大厂的面试难度越来越高,但无论从大厂还是到小公司,一直不变的重点就是对 SQL 优化经验的考察.一提到数据库,面试官 ...

最新文章

  1. Qt 学习之路 2(79):QML 组件
  2. 用iframe实现局部刷新的各种跳转方法(网上总结)
  3. android服务的说法错误的是,下面关于Android开发描述有误的一项是()。
  4. python水仙花数总结_python打印n位数“水仙花数”(实例代码)
  5. 工程制图 (点,线,面)
  6. 中南大学夏令营集训营
  7. vs2010 rdlc 报表及报表控件
  8. php 还原html,可恢复代码的HTML UI元素PHP
  9. RecyclerView实现滑动删除和拖拽功能
  10. 【工程项目经验】之Xcode的Instruments检测解决iOS内存泄露
  11. 多个帐户都用root 来登录 怎么看另一个用户使用的那些命令
  12. 让ajax更加友好,实时显示后台处理进度。
  13. java开发html如何转换为word,Java怎么将html转换成word
  14. IE11浏览器清除cookie
  15. 用shell打印正三角形_用shell命令绘制三角形
  16. 算法训练 幸运的店家
  17. mysql全称_mysql全称
  18. 28BYJ-48单极性步进电机
  19. 美国海军战列舰——田纳西号(Tennessee)
  20. python计算机视觉编程——立体图像之计算视差图

热门文章

  1. 网管学习日记-STP
  2. vs2017+配置工程的编译路径(输出目录和中间目录)
  3. Security+ 学习笔记24 数据中心防护
  4. 解决报错: The name tf.app.run is deprecated. Please use tf.compat.v1.app.run instead.
  5. layer弹出层笔记
  6. 兆芯笔试题(2015)找反复数最多的字母的数量以及位置
  7. 浅析B/S架构数据库连接方式
  8. mapreduce 多种输入
  9. php规范PSR-3(日志接口)
  10. java中可以让实例改变了类Feild(java这么干就是一个错误,你看到了就当做是类在该修改或这个类Feild)...