JavaScript:利用StringBuffer类提升+=拼接字符串效率
1<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 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</head>
 7<body>
 8</body>
 9<script type="text/javascript"><!--
10    var str = 'hello';
11    str += 'world';
12    //每次完成字符串连接都会执行步骤2到6步
13    //实际上,这段代码在幕后执行的步骤如下:
14    /*
15        1.创建存储'hello'的字符串
16        2.创建存储'world'的字符串
17        3.创建存储链接结果的字符串
18        4.把str的当前内容复制到结果中
19        5.把'world'复制到结果中
20        6.更新str,使它指向结果
21    */    
22    
23    //为了提高性能最好使用数组方法拼接字符串
24    //创建一个StringBuffer类
25    function StringBuffer(){
26        this.__strings__ = [];
27    };    
28    StringBuffer.prototype.append = function(str){
29        this.__strings__.push(str);
30    };
31    StringBuffer.prototype.toString = function(){
32        return this.__strings__.join('');
33    };
34    
35    //调用StringBuffer类,实现拼接字符串
36    //每次完成字符串连接都会执行步骤2步
37    //实际上,这段代码在幕后执行的步骤如下:
38    /*
39        1.创建存储结果的字符串
40        2.把每个字符串复制到结果中的合适位置
41    */
42    var buffer = new StringBuffer();
43    buffer.append('hello ');
44    buffer.append('world');
45    var result = buffer.toString();
46    
47    //用StringBuffer类比使用+=节省50%~66%的时间
48//-->
49</script>
50</html>
51
posted on 2009-11-23 10:16 NET未来之路 阅读(...) 评论(...) 编辑 收藏

转载于:https://www.cnblogs.com/lonelyxmas/archive/2009/11/23/1608510.html

JavaScript:利用StringBuffer类提升+=拼接字符串效率相关推荐

  1. 利用JS提高组合拼接字符串效率的方法

    日志原文: http://uniso.blog.sohu.com/104853107.html 利用JS提高组合拼接字符串效率的方法 希望跟各位高手交流,搞过web开发的朋友都知道,在脚本开发过程中, ...

  2. String拼接字符串效率低,你知道原因吗?

    面试官Q1:请问为什么String用"+"拼接字符串效率低下,最好能从JVM角度谈谈吗? 对于这个问题,我们先来看看如下代码: public class StringTest {p ...

  3. JavaSE——StringBuffer与StringBuilder拼接字符串详细解释

    目录 一.基本了解 1.1使用字符串频繁拼接会出现什么问题? 1.2  了解StringBuffer 1.3 了解StringBuilder 1.4 StringBuffer与StringBuilde ...

  4. java 超长字符串处理_JAVA的StringBuffer类( 较长字符串处理时,代替String)

    StringBuffer类和String一样,也用来代表字符串,只是由于StringBuffer的内部实现方式和String不同,所以StringBuffer在进行字符串处理时,不生成新的对象,在内存 ...

  5. JAVASE学习笔记 Java中的常用类--StringBuffer类、StringBuilder类

    1.StringBuffer类概述 在Java中我们如果对字符串进行拼接操作,每次拼接都能构建一个新的String对象,这样操作既费时有浪费时间,StringBuffer类就能解决这个问题. Stri ...

  6. Java学习总结:31(StringBuffer类)

    StringBuffer类 在Java中String类不适合使用于频繁修改字符串的操作上(因为其字符串常量一旦声明则不可改变,只能改变字符串对象,改变的是其内存地址的指向),所以我们可以使用Strin ...

  7. server多笔记录拼接字符串 sql_Java拼接“1亿行字符串”你会遇到什么问题?

    拼接"1亿行字符串"你会遇到什么问题? 本文将涉及到的三方面的内容,如下: 1,一个10万次的for循环,4种实现的性能对比 2,直接将For循环改为1亿次,遇到的问题 3,拓展 ...

  8. AJPFX关于StringBuffer类的总结

    StringBuffer类 一.字符串缓冲区,是一个容器.没有子类不能继承. 特点:长度可变化:可操作多个数据类型:可通过toString()变成字符串. 二.存储方法 1.StringBuffer ...

  9. 1.17 StringBuffer类详解

    在 Java 中,除了通过 String 类创建和处理字符串之外,还可以使用 StringBuffer 类来处理字符串.StringBuffer 类可以比 String 类更高效地处理字符串. 因为 ...

最新文章

  1. 面试官让我讲讲Unicode,我讲了3秒说没了,面试官说你可真菜
  2. Excel如何批量将表中的0替换成空值?同时不能影响正常数字中包含的0
  3. RTSP协议-中文定义
  4. 【漫画】AI小猪的一生
  5. 手把手带你手写SpringMVC,剑指优秀开源框架灵魂
  6. Sublime Text 3的中文显示乱码问题
  7. 视觉测量为什么要考虑畸变
  8. 编译pluma: pluma/Makefile.am:192: error: HAVE_INTROSPECTION does not appear in AM_CONDITIONAL
  9. 《XMPP高级编程 使用JavaScript和jQuery》
  10. PCIE实现PIO模式寄存器读写调试记录
  11. 4-5. do...while循环
  12. <ESP8266>WIFI模块AT指令浅学
  13. 华硕飞行堡垒56789原厂Windows10系统
  14. 福州大学数据科学与计算机学院分数,2021福州大学录取分数线-福州大学分数线-2021福州大学录取查询网址...
  15. mycat 分表分库
  16. 简历中特长爱好怎么写
  17. laplace变换 z变换本质
  18. 在预装win8的UFI+GTP的pc上实现ubuntu和win8双系统启动
  19. Myth源码解析系列之一-项目简介
  20. 视频剪辑软件中的标记功能与使用方法

热门文章

  1. 做实体行业现在难吗?
  2. React的学习曲线
  3. Cause: java.sql.SQLException: Unknown initial character set index ‘255‘ received from server. Initia
  4. MATLAB中ASCII码的举例
  5. uni-app目录结构介绍
  6. LeetCode-删除中间节点
  7. 计算机网络class1(概念、组成、功能和分类)
  8. java抽象类代码_java – 抽象类和通用代码
  9. 了解SQL Server数据库恢复模型
  10. UK Biobank专题