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 相关文章推荐
JavaScript 联动的无限级封装类,数据采用非Ajax方式,随意添加联动
Jun 29 Javascript
根据表格中的某一列进行排序的javascript代码
Nov 29 Javascript
JavaScript获取表单内所有元素值的方法
Apr 02 Javascript
DeviceOne 让你一见钟情的App快速开发平台
Feb 17 Javascript
iscroll.js的上拉下拉刷新时无法回弹的解决方法
Feb 18 Javascript
Bootstrap组件学习之导航、标签、面包屑导航(精品)
May 17 Javascript
Angularjs过滤器使用详解
May 25 Javascript
javascript使用递归算法求两个数字组合功能示例
Jan 03 Javascript
bootstrap输入框组件使用方法详解
Jan 19 Javascript
bootstrapvalidator之API学习教程
Jun 29 Javascript
使用Typescript开发微信小程序的步骤详解
Jan 12 Javascript
为什么node.js不适合大型项目
Apr 28 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
判断多个元素(RADIO,CHECKBOX等)是否被选择的原理说明
2009/02/18 Javascript
JQuery 引发两次$(document.ready)事件
2010/01/15 Javascript
ASP.NET jQuery 实例11 通过使用jQuery validation插件简单实现用户登录页面验证功能
2012/02/03 Javascript
JS Pro-深入面向对象的程序设计之继承的详解
2013/05/07 Javascript
jQuery解决下拉框select设宽度时IE 6/7/8下option超出显示不全
2013/05/27 Javascript
解析jquery中的ajax缓存问题
2013/12/19 Javascript
js函数名与form表单元素同名冲突的问题
2014/03/07 Javascript
JS 获取浏览器和屏幕宽高等信息代码
2014/03/31 Javascript
JavaScript中输出标签的方法
2014/08/27 Javascript
jquery动态加载js/css文件方法(自写小函数)
2014/10/11 Javascript
了不起的node.js读书笔记之node.js中的特性
2014/12/22 Javascript
jQuery中toggle()函数的使用实例
2015/04/17 Javascript
javascript实现十秒钟后注册按钮可点击的方法
2015/05/13 Javascript
jQuery+CSS实现的网页二级下滑菜单效果
2015/08/25 Javascript
JavaScript基于原型链的继承
2016/06/22 Javascript
Javascript中this关键字指向问题的测试与详解
2017/08/11 Javascript
React父子组件间的传值的方法
2018/11/13 Javascript
微信小程序日历/日期选择插件使用方法详解
2018/12/28 Javascript
vue实现虚拟列表功能的代码
2020/07/28 Javascript
原生JavaScript实现换肤
2021/02/19 Javascript
[44:40]Spirit vs Navi Supermajor小组赛 A组败者组第一轮 BO3 第一场 6.2
2018/06/03 DOTA
深入理解Python中的内置常量
2017/05/20 Python
Python元组及文件核心对象类型详解
2018/02/11 Python
实时获取Python的print输出流方法
2019/01/07 Python
Python实现从SQL型数据库读写dataframe型数据的方法【基于pandas】
2019/03/18 Python
java判断三位数的实例讲解
2019/06/10 Python
使用pandas实现连续数据的离散化处理方式(分箱操作)
2019/11/22 Python
详解CSS3的box-shadow属性制作边框阴影效果的方法
2016/05/10 HTML / CSS
CSS3制作圆形滚动进度条动画的示例
2020/11/05 HTML / CSS
传播学专业毕业生自荐信
2013/11/04 职场文书
运动会稿件50字
2014/02/17 职场文书
车队司机自我鉴定
2014/03/02 职场文书
新员工入职感想
2015/08/07 职场文书
关于元旦的广播稿2016
2015/12/17 职场文书
九年级英语教学反思
2016/02/15 职场文书
《和时间赛跑》读后感3篇
2019/12/16 职场文书