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;
}
原文地址:https://www.cnblogs.com/DajiangDev/p/3433089.html