str += "a" + "b" & str = str + "a" + "b"的性能比较

str += "a" + "b"在浏览器中的执行过程:

  1、创建临时字符串,

  2、将临时字符串设置为“ab”,

  3、将临时字符串和str进行连接,

  4、将结果赋值给str。

str = str + "a" + "b"在浏览器中的执行过程:

  1、将"a"连接到str的后面,

  2、将"b"连接到str后面。

  等同于:

    str += "a";

    str += "b";

第二种方法不仅减少了执行的过程,而且避免了临时字符串的产生。在性能上要比第一种提高10%-40%(书上看的,没有验证)

 

原理:

  除IE外,浏览器尝试扩展表达式左端的字符串的内存,并简单的将之后的字符串拷贝到它的末尾。

  

posted @ 2013-10-13 17:29  charling  阅读(305)  评论(0编辑  收藏  举报