JS 拼凑字符串的简单实例


Posted in Javascript onSeptember 02, 2016

和Java一样,JS中直接用"+"号拼凑字符串是很耗费资源的,所以在大量拼凑字符串的情景中,我们也需要一个类似于StringBuffer的工具,

下面利用Array.join()方法实现StringBuffer

function StringBuffer() { 
  this._strs = new Array; 
} 
StringBuffer.prototype.append = function (str) { 
  this._strs.push(str); 
}; 
StringBuffer.prototype.toString = function() { 
  return this._strs.join(""); 
};

使用:

var sb=new StringBuffer();

sb.append("sss")

sb.append("ddd");

sb.toString(); //"sssddd"

附一个项目中用到的字符串格式化方法

/**
*  格式化字符串
*  format("{0},{1}","ddd","fff");
*  format('<button id="{0}" type="{1}">{2}</button>',"btnOk","Button","Ok")
**/
function format(str){
  for(var i=0;i<arguments.length-1;i++){
    var placeHolder="{"+i+"}";
    if(str.indexOf(placeHolder)!=-1){
      str=str.replace(placeHolder,arguments[i+1]);
    }
  }
  return str;
}

以上这篇JS 拼凑字符串的简单实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
JS 文件传参及处理技巧分析
May 13 Javascript
动态的绑定事件addEventListener方法的使用
Jan 24 Javascript
zepto.js中tap事件阻止冒泡的实现方法
Feb 12 Javascript
简介JavaScript中的setDate()方法的使用
Jun 11 Javascript
jQuery制作图片旋转效果
Feb 02 Javascript
Angular 4依赖注入学习教程之组件服务注入(二)
Jun 04 Javascript
js原生代码实现轮播图的实例讲解
Jul 28 Javascript
Vue组件中slot的用法
Jan 30 Javascript
Vue自定义toast组件的实例代码
Aug 15 Javascript
详解vue2.0 资源文件assets和static的区别
Nov 27 Javascript
用node开发并发布一个cli工具的方法步骤
Jan 03 Javascript
javascript写一个ajax自动拦截并下载数据代码实例
Sep 07 Javascript
AngularJs Understanding the Model Component
Sep 02 #Javascript
浅谈js中StringBuffer类的实现方法及使用
Sep 02 #Javascript
AngularJs Dependency Injection(DI,依赖注入)
Sep 02 #Javascript
js实现String.Fomat的实例代码
Sep 02 #Javascript
在Docker快速部署Node.js应用的详细步骤
Sep 02 #Javascript
CSS3 3D 技术手把手教你玩转
Sep 02 #Javascript
js实现StringBuffer的简单实例
Sep 02 #Javascript
You might like
简单的移动设备检测PHP脚本代码
2011/02/19 PHP
php class中public,private,protected的区别以及实例分析
2013/06/18 PHP
遍历echsop的region表形成缓存的程序实例代码
2016/11/01 PHP
javascript学习笔记(三)显示当时时间的代码
2011/04/08 Javascript
JS实现可改变列宽的table实例
2013/07/02 Javascript
js实现倒计时(距离结束还有)示例代码
2013/07/24 Javascript
JavaScript的21条基本知识点
2014/03/04 Javascript
控制台报错object is not a function的解决方法
2014/08/24 Javascript
node.js中RPC(远程过程调用)的实现原理介绍
2014/12/05 Javascript
jquery插件jquery.dragscale.js实现拖拽改变元素大小的方法(附demo源码下载)
2016/02/25 Javascript
js表单验证实例讲解
2016/03/31 Javascript
浅谈javascript中的加减时间
2016/07/12 Javascript
JavaScript数组push方法使用注意事项
2017/10/30 Javascript
Vuex中mutations与actions的区别详解
2018/03/01 Javascript
vue写一个组件
2018/04/09 Javascript
[05:59]2018DOTA2国际邀请赛寻真——只为胜利的Secret
2018/08/13 DOTA
[41:17]完美世界DOTA2联赛PWL S3 access vs CPG 第二场 12.13
2020/12/17 DOTA
python3.0 字典key排序
2008/12/24 Python
Python中的is和id用法分析
2015/01/26 Python
在Docker上开始部署Python应用的教程
2015/04/17 Python
python 实现将多条曲线画在一幅图上的方法
2019/07/07 Python
python 利用turtle模块画出没有角的方格
2019/11/23 Python
详解Python在使用JSON时需要注意的编码问题
2019/12/06 Python
有关Tensorflow梯度下降常用的优化方法分享
2020/02/04 Python
PyQT5 实现快捷键复制表格数据的方法示例
2020/06/19 Python
ALDO英国官网:加拿大女鞋品牌
2018/02/19 全球购物
Ado与Ado.net的相同与不同
2014/12/08 面试题
在网络中有两台主机A和B,并通过路由器和其他交换设备连接起来,已经确认物理连接正确无误,怎么来测试这两台机器是否连通?如果不通,怎么来判断故障点?怎么排
2014/01/13 面试题
优秀团员个人的自我评价
2013/10/02 职场文书
2014全国两会大学生学习心得体会
2014/03/10 职场文书
信用卡结清证明怎么写
2014/09/13 职场文书
4S店销售内勤岗位职责
2015/04/13 职场文书
十七岁的单车观后感
2015/06/12 职场文书
处罚决定书范文
2015/06/24 职场文书
2016年度优秀辅导员事迹材料
2016/02/26 职场文书
Golang获取List列表元素的四种方式
2022/04/20 Golang