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 相关文章推荐
js 分栏效果实现代码
Aug 29 Javascript
jquery 日期分离成年月日的代码
May 14 Javascript
避免回车键导致的页面无意义刷新的解决方法
Apr 12 Javascript
JS焦点图切换,上下翻转
May 12 Javascript
只需20行代码就可以写出CSS覆盖率测试脚本
Apr 24 Javascript
JS分页效果示例
Oct 11 Javascript
JS Date函数整理方便使用
Oct 23 Javascript
jQuery实现鼠标滑过图片移动特效
Dec 08 Javascript
js数组去重的hash方法
Dec 22 Javascript
JS获取今天是本月第几周、本月共几周、本月有多少天、是今年的第几周、是今年的第几天的示例代码
Dec 05 Javascript
浅入深出Vue之组件使用
Jul 11 Javascript
Vue 实现v-for循环的时候更改 class的样式名称
Jul 17 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
服务器端解压缩zip的脚本
2006/12/22 PHP
PHP基础教程(php入门基础教程)一些code代码
2013/01/06 PHP
WordPress中对访客评论功能的一些优化方法
2015/11/24 PHP
PHP单例模式简单用法示例
2017/06/23 PHP
JS宝典学习笔记(下)
2007/01/10 Javascript
Firefox div高度自适应
2009/04/28 Javascript
JQuery textlimit 显示用户输入的字符数 限制用户输入的字符数
2009/05/14 Javascript
jQuery自定义事件的简单实现代码
2014/01/27 Javascript
javascript巧用eval函数组装表单输入项为json对象的方法
2015/11/25 Javascript
javascript时间排序算法实现活动秒杀倒计时效果
2021/01/28 Javascript
纯css下拉菜单 无需js
2016/08/15 Javascript
JS禁止查看网页源代码的实现方法
2016/10/12 Javascript
JS动画定时器知识总结
2018/03/23 Javascript
Vue.js 实现微信公众号菜单编辑器功能(一)
2018/05/08 Javascript
vue实现鼠标经过动画
2019/10/16 Javascript
JS遍历树层级关系实现原理解析
2020/08/31 Javascript
[41:52]2018DOTA2亚洲邀请赛3月29日小组赛B组Effect VS Secret
2018/03/30 DOTA
[06:57]DOTA2-DPC中国联赛 正赛 Ehome vs PSG.LGD 选手采访
2021/03/11 DOTA
Python 执行字符串表达式函数(eval exec execfile)
2014/08/11 Python
详解Python的Django框架中的Cookie相关处理
2015/07/22 Python
Python的网络编程库Gevent的安装及使用技巧
2016/06/24 Python
Python的requests网络编程包使用教程
2016/07/11 Python
Python对象类型及其运算方法(详解)
2017/07/05 Python
python ddt实现数据驱动
2018/03/14 Python
解决python3 requests headers参数不能有中文的问题
2019/08/21 Python
Python中filter与lambda的结合使用详解
2019/12/24 Python
python爬取网易云音乐热歌榜实例代码
2020/08/07 Python
美国指甲油品牌:Deco Miami
2017/01/30 全球购物
弘扬雷锋精神演讲稿
2014/05/10 职场文书
优秀教师先进材料
2014/12/16 职场文书
2015年党员承诺书
2015/01/21 职场文书
企业承诺书格式范文
2015/04/28 职场文书
2016秋季运动会前导词
2015/11/25 职场文书
2016母亲节感恩话语
2015/12/09 职场文书
25句企业管理语录:助你迅速打开思路,句句经典!
2020/01/14 职场文书
MySQL 开窗函数
2022/02/15 MySQL