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 相关文章推荐
从sohu弄下来的flash中展示图片的代码
Apr 27 Javascript
用js统计用户下载网页所需时间的脚本
Oct 15 Javascript
js option删除代码集合
Nov 12 Javascript
JS实现随机数生成算法示例代码
Aug 08 Javascript
利用a标签自动解析URL分析网址实例
Oct 20 Javascript
js计算文本框输入的字符数
Oct 23 Javascript
js时间戳转为日期格式的方法
Dec 28 Javascript
基于 Bootstrap Datetimepicker 联动
Aug 03 Javascript
详解require.js配置路径的用法和css的引入
Sep 06 Javascript
基于Vue的ajax公共方法(详解)
Jan 20 Javascript
Node.js事件的正确使用方法
Apr 05 Javascript
layui树形菜单动态遍历的例子
Sep 23 Javascript
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
解密ThinkPHP3.1.2版本之模块和操作映射
2014/06/19 PHP
整理php防注入和XSS攻击通用过滤
2015/09/13 PHP
PHP回调函数概念与用法实例分析
2017/11/03 PHP
为何说PHP引用是个坑,要慎用
2018/04/02 PHP
根据分辨率不同,调用不同的css文件
2006/08/25 Javascript
jQuery向上遍历DOM树之parents(),parent(),closest()之间的区别
2013/12/02 Javascript
原生Javascript封装的一个AJAX函数分享
2014/10/11 Javascript
js简单工厂模式用法实例
2015/06/30 Javascript
JavaScript中的this到底是什么(一)
2015/12/09 Javascript
jQuery+css实现的换页标签栏效果
2016/01/27 Javascript
js实现人民币大写金额形式转换
2016/04/27 Javascript
vue实现留言板todolist功能
2017/08/16 Javascript
AngularJS实现的简单拖拽功能示例
2018/01/02 Javascript
原生js调用json方法总结
2018/02/22 Javascript
js实现每日签到功能
2018/11/29 Javascript
Vue 构造选项 - 进阶使用说明
2020/08/14 Javascript
如何在 ant 的table中实现图片的渲染操作
2020/10/28 Javascript
python实现随机密码字典生成器示例
2014/04/09 Python
举例详解Python中yield生成器的用法
2015/08/05 Python
Python 模拟员工信息数据库操作的实例
2017/10/23 Python
Python 模拟动态产生字母验证码图片功能
2019/12/24 Python
Python语法之精妙的十个知识点(装B语法)
2020/01/18 Python
CentOS 7如何实现定时执行python脚本
2020/06/24 Python
Python实现上下文管理器的方法
2020/08/07 Python
Python logging模块原理解析及应用
2020/08/13 Python
Python环境使用OpenCV检测人脸实现教程
2020/10/19 Python
详解Canvas 跨域脱坑实践
2018/11/07 HTML / CSS
阿根廷票务网站:StubHub阿根廷
2018/04/13 全球购物
ZWILLING双立人英国网上商店:德国刀具锅具厨具品牌
2018/05/15 全球购物
自我评价是什么
2014/01/04 职场文书
便利店投资的创业计划书
2014/01/12 职场文书
小学教师工作总结2015
2015/04/07 职场文书
幼儿园2016圣诞节活动总结
2016/03/31 职场文书
关于EntityWrapper的in用法
2022/03/22 Java/Android
JS轻量级函数式编程实现XDM三
2022/06/16 Javascript
Go gRPC进阶教程gRPC转换HTTP
2022/06/16 Golang