本文实例讲述了javascript文本模板用法。分享给大家供大家参考。具体如下:
这是我参考Prism.js算法写的一个小功能,没什么可说的,作为程序猿看例子应该秒懂。
字符串模板引擎类:
/*class*/StringTemplate = function (
/* Optional {patt: RegExp, clPatt: RegExp}*/pattern) {
if (!!pattern) {
this.patt = pattern.patt;
this.clPatt = pattern.clPatt;
} else {
this.patt = /%\\{\\s*[\\w\\-]+\\s*\\}/g;
this.clPatt = /(^%\\{\\s*)|(\\s*\\}$)/g;
}
this.format = function(val, map) {
var ls = [];
var res;
var prevEnd = 0;
while ((res = this.patt.exec(val)) != null) {
var va = res[0];
var start = val.substr(prevEnd, res.index - prevEnd);
prevEnd = res.index + va.length;
ls.push(start);
var vac = va.replace(this.clPatt, \"\");
ls.push(map[vac]);
}
ls.push(val.substr(prevEnd, val.length));
return ls.join(\"\");
}
}
使用方式:
var str = new StringTemplate().format(\"你好%{userName }, 欢迎再次登陆%{systemName}\",{userName: \"小明\", systemName: \"phpstudy\"});
//str=\"你好小明, 欢迎再次登陆phpstudy\";
希望本文所述对大家的javascript程序设计有所帮助。
本文地址:https://www.stayed.cn/item/7365
转载请注明出处。
本站部分内容来源于网络,如侵犯到您的权益,请 联系我