1、相关知识点:原型模式、原型对象、原型链
/*字符串连接类:
* var html=new iStringBuilder();
* html.append("hello {0} ,welcome to {1}","Hlan","Xiamen");
* html.append("...");
* html.toString();
* >> hello Hlan ,welcome to Xiamen...
*/
function iStringBuilder() {
this.stringArray = new Array();
}
iStringBuilder.prototype.len = function () {
return this.stringArray.length;
};
iStringBuilder.prototype.append = function () {
this.stringArray.push(iFormatStringArg(arguments));
};
iStringBuilder.prototype.toString = function () {
return this.stringArray.join("");
};
iStringBuilder.prototype.join = function (sep) {
return this.stringArray.join(sep);
};
iStringBuilder.prototype.clear = function () {
delete this.stringArray;
this.stringArray = new Array();
};
function iFormatStringArg(args) {
if (args.length <= 0) return "";
if (args.length == 1) return args[0];
var str = args[0];
for (var i = 1; i < args.length; i++) {
str = str.replace("{" + (i - 1) + "}", args[i]);
}
return str;
}