JS 拼凑字符串的简单实例

和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 拼凑字符串的简单实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们。

(0)

相关推荐

  • JavaScript中使用concat()方法拼接字符串的教程

    这种方法将两个或多个字符串,并返回一个新的单字符串. 语法 string.concat(string2, string3[, ..., stringN]); 下面是参数的详细信息: string2...stringN : 这些是要连接字符串. 返回值: 返回一个连接字符串. 例子: <html> <head> <title>JavaScript String concat() Method</title> </head> <body>

  • JavaScript String(字符串)对象的简单实例(推荐)

    返回字符串的长度: <html> <body> <script type="text/javascript"> var txt="Hello World!" document.write(txt.length) </script> </body> </html> 为字符串添加样式: <html> <body> <script type="text/java

  • JavaScript中字符串拼接的基本方法

    非常简单,就用一个"+"将两个字符串"相加": var longString = "One piece " + "plus one more piece."; 要将多个字符串累积为一个字符串,还可以使用"+="操作符: var result = ""; result += "My name is Anders" result += " and my age

  • JS下高效拼装字符串的几种方法比较与测试代码

    在使用Ajax提交信息时,我可能常常需要拼装一些比较大的字符串通过XmlHttp来完成POST提交.尽管提交这样大的信息的做法看起来并不优雅,但有时我们可能不得不面对这样的需求.那么JavaScript中对字符串的累加速度如何呢?我们先来做下面的这个实验.累加一个长度为30000的字符串. 测试代码1 - 耗时: 14.325秒 复制代码 代码如下: var str = ""; for (var i = 0; i < 50000; i++) { str += "xxxx

  • JS 拼凑字符串的简单实例

    和Java一样,JS中直接用"+"号拼凑字符串是很耗费资源的,所以在大量拼凑字符串的情景中,我们也需要一个类似于StringBuffer的工具, 下面利用Array.join()方法实现StringBuffer function StringBuffer() { this._strs = new Array; } StringBuffer.prototype.append = function (str) { this._strs.push(str); }; StringBuffer.

  • js实现StringBuffer的简单实例

    实现: function StringBuffer() { this.__strings__ = []; }; StringBuffer.prototype.Append = function (str) { this.__strings__.push(str); return this; }; //格式化字符串 StringBuffer.prototype.AppendFormat = function (str) { for (var i = 1; i < arguments.length;

  • js复制内容到剪贴板代码,js复制代码的简单实例

    如下所示: <script type="text/JavaScript"> function jsCopy(){ var e=document.getElementById("contents");//对象是contents e.select(); //选择对象 document.execCommand("Copy"); //执行浏览器复制命令 } </script> <textarea id="conte

  • js实现二级联动简单实例

    本文实例为大家分享了js实现二级联动的具体代码,供大家参考,具体内容如下 此实例是一个简单的二级联动,第一个列表中的值为固定的,第二个列表中的值随着第一个列表值的变化而变化,即第一个列表影响第二个列表. 实现思路:先写两个<select>标签,用name或id来区分:写一个二维数组来存放信息:在一级菜单中使用onchange()事件来动态加载二级菜单的内容. 完整代码 <html> <head> <meta charset="UTF-8">

  • Vue.js路由实现选项卡简单实例

    本文实例为大家分享了Vue.js路由实现选项卡的具体代码,供大家参考,具体内容如下 需要实现下图效果,点击上方选项卡,切换到不同内容的组件: 事先准备好两个库文件(vue.js.vue-router.js),放到对应路径. 1.引入依赖库 <script src="vue.js" type="text/javascript" charset="GBK"></script> <script src="vue-

  • js模拟hashtable的简单实例

    复制代码 代码如下: function Hashtable()//自定义hashtable{    this._hash = new Object();    this.add = function(key, value) {        if (typeof (key) != "undefined") {            if (this.contains(key) == false) {                this._hash[key] = typeof (va

  • C#Js时间格式化问题简单实例

    C# 后台: 复制代码 代码如下: .ToString("dd-MMM-yyyy", System.Globalization. DateTimeFormatInfo.InvariantInfo)   eg : 29-Aug-2013 Js 前台: 复制代码 代码如下: monName = new Array( "Jan", "Feb" , "Mar", "Apr", "May" , &

  • js格式化时间的简单实例

    Date.prototype.format = function(format) { //author: meizz let o = { "M+": this.getMonth() + 1, //月份 "d+": this.getDate(), //日 "H+": this.getHours(), //小时 "m+": this.getMinutes(), //分 "s+": this.getSeconds

  • c#模拟js escape方法的简单实例

    复制代码 代码如下: public static string Escape(string s)        {            StringBuilder sb = new StringBuilder();            byte[] ba = System.Text.Encoding.Unicode.GetBytes(s);            for (int i = 0; i < ba.Length; i += 2)            {              

  • node.js操作mysql简单实例

    上篇文章介绍了node.js操作redis的简单实例,这里介绍如何操作mysql. 安装 安装mysql模块 cnpm install mysql 一个例子 新建一个mysql.js的文件,代码如下: 连接配置 1.host:主机地址 (默认:localhost) 2.user:用户名 3.password:密码 4.port:端口号 (默认:3306) 5.database:数据库名 6.charset:连接字符集(默认:'UTF8_GENERAL_CI',注意字符集的字母都要大写) 7.lo

随机推荐