【前端】一个简单的模板替换函数

...

 1 function templateReplace(template, data) {
 2     for (var i in data) {
 3         oldRe = new RegExp(‘\\{\\$‘ + i + ‘\\}‘, ‘g‘);
 4         newStr = data[i].toString();
 5         template = template.replace(oldRe, newStr);
 6     }
 7     return template;
 8 }
 9
10 // =======test========
11 var data = {
12     name:‘Zhao Kang‘,
13     age:‘24‘
14 };
15
16 var template = "My name is {$name}, my age is {$age}."
17
18 templateReplace(template, data); // "My name is Zhao Kang, my age is 24."

...

时间: 2024-10-26 06:11:58

【前端】一个简单的模板替换函数的相关文章

写一个简单的模板引擎

写一个简单的模板引擎 ES6 开始支持模板字符串(Template literals),支持如下的写法: `string text ${expression} string text`; 其实在很多模板引擎中,常常会有这样需求,比如常用的 doT,使用类似的语法 <div>{{=1+2}}</div> // 或者支持循环或者判断 {{for(var i in it){}}} <span>{{=i}}</span> {{}}} 简单插值的实现 我们先来看看一个

一个简单的java回调函数的实现

回调函数 回调函数涉及的3个函数 登记回调函数 回调函数 响应回调函数 简单的解释 你到一个商店买东西,刚好你要的东西没有货,于是你在店员那里留下了你的电话,过了几天店里有货了,店员就打了你的电话,然后你接到电话后就到店里去取了货.在这个例子里,你的电话号码就叫回调函数,你把电话留给店员就叫登记回调函数,店里后来有货了叫做触发了回调关联的事件,店员给你打电话叫做调用回调函数,你到店里去取货叫做响应回调事件.回答完毕.来自知乎点击打开链接 代码的实现 首先有一个接口 interface CallB

1、编写一个简单Makefile模板

一.Makefile简介 一个工程中的源文件不计其数,其按类型.功能.模块分别放在若干个目录中,makefile定义了一系列的规则来指定,哪些文件需要先编译,哪些文件需要后编译,哪些文件需要重新编译,甚至于进行更复杂的功能操作,因为 makefile就像一个Shell脚本一样,其中也可以执行操作系统的命令.linux内核的编译同样也遵循这些规则,具体说明可见kernel/Documentation/kbuild/makefiles.txt 二.简单编写一个Makefile模板 当编译少量的源文件

一个简单的jQuery回调函数例子

jQuery回调函数简单使用 比如说,我们想要点击某个按钮后触发事件, 先把一些指定内容给隐藏掉, 然后跳出相关信息的对话框. 如果使用普通的方法, 不用回调函数的话, 会有怎么样的效果呢? 效果是先弹出对话框再隐藏内容, 然后再隐藏指定内容. 这显然不是我们想要的效果, 如果使用回调函数,就可以解决这个问题. 当然,回调函数功能远不只这么简单…… 具体的代码如下: [html] view plain copy <%@ page language="java" import=&q

LayaBox开发实战之实现一个简单的模板类

1.首先UI设计:记得导出 2.然后查看layaUI.max.all.js中是否生成对应UI的JS代码: var FeedBackUI=(function(_super){ function FeedBackUI(){ this.btn_close=null; this.FeedBackText=null; this.button_submit=null; this.button_cancel=null; FeedBackUI.__super.call(this); } CLASS$(FeedB

一个简单的sel server 函数的自定义

创建自定义函数:use 数据库名gocreate function 函数名(@pno int)returns intasbegin  declare @a int   if not exists(select * from person where [email protected])      set @a=-1   else      set @a=1  return @aend 调用函数:use 数据库名goselect dbo.函数名(13250)

一个简单的模板了解css+div网页布局

直接附上最终效果图: index.html内容: <html> <!--20170730 soulsjie--> <head> <meta http-equiv="Content-Type" content="text/html; charset=gb2312" /> <title>div+css页面布局综合练习</title> <link rel="stylesheet&quo

编写一个简单的js模板替换工具 rtt----replace templete tool

最近一段时间在修改自己的个人在线简历.  这个在线简历用到了css3来制作3D的旋转效果, 因此会有兼容性问题, 针对于不支持css3的3D透视的浏览器, 比如 IE,  360等等, 我使用的是另一套css文件兼容.  针对于移动端浏览器, 尽管基本都是webkit内核, 但经测试发现3D效果并不流畅, 因此移动端是识别userAgent切换到另一套非3D页面.  因为没用任何数据库, 那么问题就来了, 移动端和pc端两套页面是共用的一套数据, 我想到的方法有两个: 一是页面加载之后用ajax

一个简单的函数指针测试例子

一般函数指针的一个简单测试.将函数放到vector里面,将函数作为形参. 1 typedef void(*GTestFunPtr)(int, int); 2 3 void test1(int a, int b) 4 { 5 std::cout << "test1:" << a + b << std::endl; 6 } 7 8 void test2(int a, int b) 9 { 10 std::cout << "test2