javascript文本模板用法实例


Posted in Javascript onJuly 31, 2015

本文实例讲述了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: "3water"});
//str="你好小明, 欢迎再次登陆3water";

希望本文所述对大家的javascript程序设计有所帮助。

Javascript 相关文章推荐
用JQuery 实现AJAX加载XML并解析的脚本
Jul 25 Javascript
页面右下角弹出提示框示例代码js版
Aug 02 Javascript
js特殊字符转义介绍
Nov 05 Javascript
javascript实现控制文字大中小显示
Apr 28 Javascript
最简单的JavaScript图片轮播代码(两种方法)
Dec 18 Javascript
详解js中call与apply关键字的作用
Nov 21 Javascript
微信公众号  提示:Unauthorized API function 问题解决方法
Dec 05 Javascript
使用ionic播放轮询广告的实现方法(必看)
Apr 24 Javascript
ReactNative之键盘Keyboard的弹出与消失示例
Jul 11 Javascript
修改UA在PC中访问只能在微信中打开的链接方法
Nov 27 Javascript
vue 动态绑定背景图片的方法
Aug 10 Javascript
jQuery事件blur()方法的使用实例讲解
Mar 30 jQuery
Javascript实现网络监测的方法
Jul 31 #Javascript
jquery模拟alert的弹窗插件
Jul 31 #Javascript
JSON字符串转JSON对象
Jul 31 #Javascript
javascript实现简单的页面右下角提示信息框
Jul 31 #Javascript
JavaScript实现快速排序的方法
Jul 31 #Javascript
javascript常用正则表达式汇总
Jul 31 #Javascript
轻量级网页遮罩层jQuery插件用法实例
Jul 31 #Javascript
You might like
如何获知PHP程序占用多少内存(memory_get_usage)
2012/09/23 PHP
编写php应用程序实现摘要式身份验证的方法详解
2013/06/08 PHP
PHP中字符安全过滤函数使用小结
2015/02/25 PHP
CodeIgniter自定义控制器MY_Controller用法分析
2016/01/20 PHP
php图像处理函数imagecopyresampled用法详解
2016/12/02 PHP
php简单实现文件或图片强制下载的方法
2016/12/06 PHP
JQuery 浮动导航栏实现代码
2009/08/27 Javascript
js对列表中第一个值处理与jsp页面对列表中第一个值处理的区别详解
2013/11/05 Javascript
extjs4 treepanel动态改变行高度示例
2013/12/17 Javascript
Bootstrap开关(switch)控件学习笔记分享
2016/05/30 Javascript
AngularJS 模块化详解及实例代码
2016/09/14 Javascript
JS匿名函数实例分析
2016/11/26 Javascript
AngularJS 防止页面闪烁的方法
2017/03/09 Javascript
angularjs实现搜索的关键字在正文中高亮出来
2017/06/13 Javascript
layui-tree实现Ajax异步请求后动态添加节点的方法
2019/09/23 Javascript
微信小程序定义和调用全局变量globalData的实现
2019/11/01 Javascript
JavaScript 装逼指南(js另类写法)
2020/05/10 Javascript
Python+Django在windows下的开发环境配置图解
2009/11/11 Python
Python实现Const详解
2015/01/27 Python
详解Python的Django框架中的模版继承
2015/07/16 Python
python实现飞机大战
2018/09/11 Python
pandas求两个表格不相交的集合方法
2018/12/08 Python
解决Djang2.0.1中的reverse导入失败的问题
2019/08/16 Python
python用线性回归预测股票价格的实现代码
2019/09/04 Python
python多继承(钻石继承)问题和解决方法简单示例
2019/10/21 Python
python sorted方法和列表使用解析
2019/11/18 Python
python3发送request请求及查看返回结果实例
2020/04/30 Python
CSS3实现多重边框的方法总结
2016/05/31 HTML / CSS
常用的HTML5列表标签
2017/06/20 HTML / CSS
大学生四个方面的自我评价
2013/09/19 职场文书
12月红领巾广播稿
2014/02/13 职场文书
军训自我鉴定怎么写
2014/02/13 职场文书
另类冲刺标语
2014/06/24 职场文书
浪漫婚礼主题活动策划方案
2014/09/15 职场文书
2016读书月活动心得体会
2016/01/14 职场文书
python中Pyqt5使用Qlabel标签播放视频
2022/04/22 Python