常用的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里使用Dom操作Xml
Jan 22 Javascript
JavaScript多线程的实现方法
May 08 Javascript
YUI Compressor压缩JavaScript原理及微优化
Jan 07 Javascript
控制input输入框中提示信息的显示和隐藏的方法
Feb 12 Javascript
VueJS全面解析
Nov 10 Javascript
详解使用vue实现tab 切换操作
Jul 03 Javascript
浅析Vue 和微信小程序的区别、比较
Aug 03 Javascript
js canvas实现红包照片效果
Aug 21 Javascript
Vue多组件仓库开发与发布详解
Feb 28 Javascript
在antd Table中插入可编辑的单元格实例
Oct 28 Javascript
微信小程序实现点赞业务
Feb 10 Javascript
vue3获取当前路由地址
Feb 18 Vue.js
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注释和去除空格函数分享
2014/03/13 PHP
php实现的返回数据格式化类实例
2014/09/22 PHP
PHP判断一个字符串是否是回文字符串的方法
2015/03/23 PHP
PHP实现一个限制实例化次数的类示例
2019/09/16 PHP
JQUERY设置IFRAME的SRC值的代码
2010/11/30 Javascript
jQuery选择器全面总结
2014/01/06 Javascript
原生Javascript封装的一个AJAX函数分享
2014/10/11 Javascript
Javascript中的关键字和保留字整理
2014/10/16 Javascript
轻量级的原生js日历插件calendar.js使用指南
2015/04/28 Javascript
javascript框架设计之种子模块
2015/06/23 Javascript
深入理解JavaScript中的浮点数
2016/05/18 Javascript
Vue.js展示AJAX数据简单示例讲解
2017/03/29 Javascript
Vue开发之封装分页组件与使用示例
2019/04/25 Javascript
三分钟教你用Node做一个微信哄女友(基友)神器(面向小白)
2019/06/21 Javascript
vue中父子组件的参数传递和应用示例
2021/01/04 Vue.js
[01:07]2015国际邀请赛 中国区预选赛精彩回顾
2015/06/15 DOTA
菜鸟使用python实现正则检测密码合法性
2016/01/05 Python
Python2与python3中 for 循环语句基础与实例分析
2017/11/20 Python
python ddt实现数据驱动
2018/03/14 Python
django 发送手机验证码的示例代码
2018/04/25 Python
Python日期时间Time模块实例详解
2019/04/15 Python
python频繁写入文件时提速的方法
2019/06/26 Python
用Python+OpenCV对比图像质量的几种方法
2019/07/15 Python
Django 实现xadmin后台菜单改为中文
2019/11/15 Python
keras获得某一层或者某层权重的输出实例
2020/01/24 Python
Python 程序员必须掌握的日志记录
2020/08/17 Python
使用Html5 Stream开发实时监控系统
2020/06/02 HTML / CSS
护理专业毕业生自我鉴定
2013/10/08 职场文书
党员公开承诺书范文
2014/03/25 职场文书
庆元旦演讲稿
2014/09/15 职场文书
学习作风建设心得体会
2014/10/22 职场文书
2014年艾滋病防治工作总结
2014/12/10 职场文书
假如给我三天光明读书笔记
2015/06/26 职场文书
同学聚会祝酒词
2015/08/10 职场文书
python中pandas对多列进行分组统计的实现
2021/06/18 Python
MySql数据库触发器使用教程
2022/06/01 MySQL