js中高效拼接字符串

写在前面

面试的过程,很有可能面试到c#那种方式拼接字符串更高效,然后就会引申到js中的拼接方式。这也是我在面试中遇到的问题,当时,也真没比较过js中到底哪种方式更高效。然后,跟猜测一样,说了使用数组的方式,然后使用join方法实现。

代码测试

 1 <!DOCTYPE html>
 2 <html xmlns="http://www.w3.org/1999/xhtml">
 3 <head>
 4     <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
 5     <title>字符串拼接</title>
 6     <script type="text/javascript">
 7         var start = new Date();
 8         var str = "";
 9         for (var i = 0; i < 1000000; i++) {
10             str += "test";
11         }
12         var end = new Date();
13         document.writeln("+拼接字符串,耗时:" + (end.getMilliseconds() - start.getMilliseconds()));
14         document.writeln("<br/>");
15         var begin = new Date();
16         var arry = new Array();
17         for (var i = 0; i < 1000000; i++) {
18             arry.push("test");
19         }
20         arry.join("");
21         var stop = new Date();
22         document.writeln("数组方式拼接字符串,耗时:" + (stop.getMilliseconds() - begin.getMilliseconds()));
23     </script>
24 </head>
25 <body>
26 </body>
27 </html>

测试结果
IE11

+拼接字符串,耗时:39
数组方式拼接字符串,耗时:31

IE11兼容性视图

+拼接字符串,耗时:40
数组方式拼接字符串,耗时:33

IE10

+拼接字符串,耗时:39
数组方式拼接字符串,耗时:32

IE9

+拼接字符串,耗时:36
数组方式拼接字符串,耗时:33

IE8

+拼接字符串,耗时:35
数组方式拼接字符串,耗时:35

IE7

+拼接字符串,耗时:37
数组方式拼接字符串,耗时:35

总结

在面试过程中遇到的一个知识点,在此记录一下。

posted @ 2015-03-09 14:57  wolfy  阅读(8936)  评论(2编辑  收藏  举报