常用的JavaScript模板引擎介绍


Posted in Javascript onFebruary 28, 2015

最近工作内容慢慢接近我的理想化(web前端),所以关注比较多的是前端性能!后台同事介绍使用ajax模板引擎,提高渲染速度!

下面介绍几款 JavaScript 模板引擎

1. Mustache

基于javascript 实现的模板引擎,类似于 Microsoft's jQuery template plugin,但更简单易用!

2. doT.js

doT.js 包含为浏览器和Node.js 准备的 JavaScript 模板引擎。

3. jSmart

jSmart 是著名的 PHP 模板引擎 Smarty 的 JavaScript 移植版本。

4. dom.js

dom.js 是一款可用在客户端和服务器端的 JavaScript 模板引擎

5. jade

Jade是受Haml的影响以JavaScript实现用于node的高性能模板引擎。

6. Hogan.js

来自 Twitter 的 JavaScript 模板引擎。

7. Handlebars

Handlebars 是一个 JavaScript 的页面模板库

8. artTemplate

artTemplate 是新一代 javascript 模板引擎,它在 v8 中的渲染效率可接近 javascript 性能极限,在 chrome 下渲染效率测试中分别是知名引擎 Mustache 与 micro tmpl 的 25 、 32 倍。引擎支持调试。若渲染中遇到错误,调试器可精确定位到产生异常的模板语句,解决前端模板难以调试的问题。

独有模板编译工具,它能把前端模板编译成不依赖模板引擎运行的JS文件,让前端模板可以突破浏览器的限制,实现像后端模板一样按文件与目录的方式组织、按需加载、include嵌套等。这一切都在 2kb(gzip) 中实现!

也许你会觉得这个插件名似曾相识,没错!这个也是artDialog的作者糖饼

博客地址:http://www.planeart.cn/

引用引擎

<script src="js/template.js"></script>

编写模板

<script id="test" type="text/html">

//使用一个type="text/html"的script标签存放模板:

<h1><%=title%></h1>

<ul>

  <%

    for(i=0;i<list.length;i++){%>

      <li>itemL <%=i+1%>:<%=list[i]%></li>

    <%}%>

</ul>

//模板逻辑语法开始与结束的界定符号为<% 与%>,若<%后面紧跟=号则输出变量内容

</script>

渲染模板

var data = {

    title: '标签',

    list: ['文艺', '博客', '摄影', '电影', '民谣', '旅行', '吉他']

};

var html=template.render("test",data);

document.getElementById('content').innerHTML = html;
Javascript 相关文章推荐
JavaScript基本对象
Jan 11 Javascript
JQuery select控件的相关操作实现代码
Sep 14 Javascript
js操作checkbox遇到的问题解决
Jun 29 Javascript
jQuery实现倒计时按钮功能代码分享
Sep 03 Javascript
基于jQuery实现的QQ表情插件
Aug 25 Javascript
jQuery实现的多滑动门,多选项卡效果代码
Mar 28 Javascript
Vuejs第一篇之入门教程详解(单向绑定、双向绑定、列表渲染、响应函数)
Sep 09 Javascript
原生js实现焦点轮播图效果
Jan 12 Javascript
JavaScript常用数学函数用法示例
May 14 Javascript
为什么说JavaScript预解释是一种毫无节操的机制详析
Nov 18 Javascript
JQuery判断radio单选框是否选中并获取值的方法
Jan 17 jQuery
如何在vue中使用百度地图添加自定义覆盖物(水波纹)
Nov 03 Javascript
JavaScript操作Cookie详解
Feb 28 #Javascript
js实现可得到不同颜色值的颜色选择器实例
Feb 28 #Javascript
JS+CSS实现实用的单击输入框弹出选择框的方法
Feb 28 #Javascript
JS实现很酷的EMAIL地址添加功能实例
Feb 28 #Javascript
浅谈JavaScript数据类型及转换
Feb 28 #Javascript
javaScript基础语法介绍
Feb 28 #Javascript
jQuery实现的输入框选择时间插件用法实例
Feb 28 #Javascript
You might like
PHP 数组教程 定义数组
2009/10/23 PHP
在PHP中PDO解决中文乱码问题的一些补充
2010/09/06 PHP
javascript instanceof 与typeof使用说明
2010/01/11 Javascript
JS 排序输出实现table行号自增前端动态生成的tr
2014/08/13 Javascript
AngularJS2中一种button切换效果的实现方法(二)
2017/03/27 Javascript
vue组件实现文字居中对齐的方法
2017/08/23 Javascript
详解基于Vue2.0实现的移动端弹窗(Alert, Confirm, Toast)组件
2018/08/02 Javascript
彻底弄懂 JavaScript 执行机制
2018/10/23 Javascript
JavaScript Reflect Metadata实现详解
2019/12/12 Javascript
前端使用crypto.js进行加密的函数代码
2020/08/16 Javascript
jQuery实现动态加载瀑布流
2020/09/01 jQuery
vue3.0 加载json的方法(非ajax)
2020/10/26 Javascript
JavaScript 异步时序问题
2020/11/20 Javascript
[01:18:31]DOTA2-DPC中国联赛定级赛 LBZS vs Magma BO3第一场 1月10日
2021/03/11 DOTA
python基础教程之简单入门说明(变量和控制语言使用方法)
2014/03/25 Python
详细介绍Ruby中的正则表达式
2015/04/10 Python
使用python装饰器计算函数运行时间的实例
2018/04/21 Python
详解Python 装饰器执行顺序迷思
2018/08/08 Python
Flask框架踩坑之ajax跨域请求实现
2019/02/22 Python
pandas删除行删除列增加行增加列的实现
2019/07/06 Python
Anaconda 查看、创建、管理和使用python环境的方法
2019/12/03 Python
Pyorch之numpy与torch之间相互转换方式
2019/12/31 Python
基于pytorch的lstm参数使用详解
2020/01/14 Python
python with (as)语句实例详解
2020/02/04 Python
在pycharm中创建django项目的示例代码
2020/05/28 Python
Python调用SMTP服务自动发送Email的实现步骤
2021/02/07 Python
用canvas做一个DVD待机动画的实现代码
2019/04/12 HTML / CSS
Under Armour美国官网:美国知名高端功能性运动品牌
2016/09/05 全球购物
cosme官方海外旗舰店:日本最大化妆品和美容产品的综合口碑网站
2017/01/18 全球购物
德国团购网站:Groupon德国
2018/03/13 全球购物
关于廉洁的广播稿
2014/01/30 职场文书
啤酒节策划方案
2014/05/28 职场文书
三八妇女节超市活动方案
2014/08/18 职场文书
学习保证书怎么写
2015/02/26 职场文书
酒店人事专员岗位职责
2015/04/07 职场文书
JVM钩子函数的使用场景详解
2021/08/23 Java/Android