JavaScript 利用StringBuffer类提升+=拼接字符串效率

时间:2024-07-29 09:55:23 


<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title></title>
</head>
<body>
</body>
<script type="text/javascript"><!--
var str = 'hello';
str += 'world';
//每次完成字符串连接都会执行步骤2到6步
//实际上,这段代码在幕后执行的步骤如下:
/**//*
1.创建存储'hello'的字符串
2.创建存储'world'的字符串
3.创建存储链接结果的字符串
4.把str的当前内容复制到结果中
5.把'world'复制到结果中
6.更新str,使它指向结果
*/

//为了提高性能最好使用数组方法拼接字符串
//创建一个StringBuffer类
function StringBuffer(){
this.__strings__ = [];
};
StringBuffer.prototype.append = function(str){
this.__strings__.push(str);
};
StringBuffer.prototype.toString = function(){
return this.__strings__.join('');
};

//调用StringBuffer类,实现拼接字符串
//每次完成字符串连接都会执行步骤2步
//实际上,这段代码在幕后执行的步骤如下:
/**//*
1.创建存储结果的字符串
2.把每个字符串复制到结果中的合适位置
*/
var buffer = new StringBuffer();
buffer.append('hello ');
buffer.append('world');
var result = buffer.toString();

//用StringBuffer类比使用+=节省50%~66%的时间
//-->
</script>
</html>
标签:StringBuffer,拼接字符串
0
投稿

猜你喜欢

  • lhgcalendar时间插件限制只能选择三个月的实现方法

    2024-04-10 13:56:53
  • php中重定向网页跳转方法总结案例教程

    2023-06-11 20:47:18
  • python 8种必备的gui库

    2021-10-28 21:10:01
  • Spring MVC+MyBatis+MySQL实现分页功能实例

    2024-01-26 22:23:23
  • 举例讲解Python装饰器

    2022-02-17 10:49:18
  • SQL Server正确删除Windows认证用户的方法

    2024-01-25 23:06:15
  • python对于requests的封装方法详解

    2023-02-06 15:29:48
  • GoLang中的timer定时器实现原理分析

    2024-04-23 09:36:12
  • 浅谈Python traceback的优雅处理

    2023-08-06 06:57:42
  • Python scrapy爬取起点中文网小说榜单

    2022-11-06 14:34:11
  • 通过实例解析python描述符原理作用

    2021-01-15 03:14:57
  • Django框架反向解析操作详解

    2023-12-31 03:06:49
  • Python标准库defaultdict模块使用示例

    2022-03-02 04:35:05
  • Python实现GPU加速的基本操作

    2021-07-30 05:10:34
  • python爬取免费代理并验证代理是否可用

    2021-12-24 20:02:48
  • python 层次聚类算法图文示例

    2023-09-25 05:57:46
  • vue2.0开发实践总结之疑难篇

    2024-05-02 16:33:28
  • python树莓派红外反射传感器

    2022-12-05 16:11:47
  • django反向解析和正向解析的方式

    2021-11-21 11:03:49
  • 用Oracle并行查询发挥多CPU的威力

    2010-07-23 12:52:00
  • asp之家 网络编程 m.aspxhome.com