常用的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 相关文章推荐
关于html+ashx开发中几个问题的解决方法
Jul 18 Javascript
javascript间隔刷新的简单实例
Nov 14 Javascript
图片上传插件jquery.uploadify详解
Nov 15 Javascript
JS实现漂亮的窗口拖拽效果(可改变大小、最大化、最小化、关闭)
Oct 10 Javascript
BootStrap学习系列之Bootstrap Typeahead 组件实现百度下拉效果(续)
Jul 07 Javascript
jquery滚动条插件slimScroll使用方法
Feb 09 Javascript
EasyUI的DataGrid每行数据添加操作按钮的实现代码
Aug 22 Javascript
JavaScript定义及输出螺旋矩阵的方法详解
Dec 01 Javascript
js 索引下标之li集合绑定点击事件
Jan 12 Javascript
详解基于Vue,Nginx的前后端不分离部署教程
Dec 04 Javascript
koa2 用户注册、登录校验与加盐加密的实现方法
Jul 22 Javascript
简述ES6新增关键字let与var的区别
Aug 23 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
轻松入门: 煮好咖啡的七个诀窍
2021/03/03 冲泡冲煮
第三节--定义一个类
2006/11/16 PHP
使用zend studio for eclipse不能激活代码提示功能的解决办法
2009/10/11 PHP
YII Framework框架教程之国际化实现方法
2016/03/14 PHP
ie和firefox中img对象区别的困惑
2006/12/27 Javascript
经典的解除许多网站无法复制文字的绝招
2006/12/31 Javascript
FormValid0.5版本发布,带ajax自定义验证例子
2007/08/17 Javascript
关于COOKIE个数与大小的问题
2011/01/17 Javascript
js Array操作的最简短最容易理解方法
2013/12/09 Javascript
深入理解JavaScript系列(19):求值策略(Evaluation strategy)详解
2015/03/05 Javascript
jquery 构造函数在表单提交过程中修改数据
2015/05/25 Javascript
AngularJS删除路由中的#符号的方法
2016/09/20 Javascript
javascript动态创建对象的属性详解
2018/11/07 Javascript
vue动态配置模板 'component is'代码
2019/07/04 Javascript
Layui点击图片弹框预览的实现方法
2019/09/16 Javascript
JS跨浏览器解析XML应用过程详解
2020/10/16 Javascript
Vue项目利用axios请求接口下载excel
2020/11/17 Vue.js
python字符串替换示例
2014/04/24 Python
基于python中pygame模块的Linux下安装过程(详解)
2017/11/09 Python
Python实现简单的文本相似度分析操作详解
2018/06/16 Python
Python匿名函数及应用示例
2019/04/09 Python
Python实现串口通信(pyserial)过程解析
2019/09/25 Python
canvas实现有递增动画的环形进度条的实现方法
2019/07/10 HTML / CSS
Intimissimi德国网上商店:意大利知名内衣品牌
2018/04/03 全球购物
选购国际女性时装设计师品牌:IFCHIC(支持中文)
2018/04/12 全球购物
车工岗位职责
2013/11/26 职场文书
博士学位自我鉴定范文
2013/12/26 职场文书
教师求职信范文分享
2013/12/27 职场文书
对孩子的寄语
2014/04/09 职场文书
服务员岗位职责
2015/02/03 职场文书
教师辞职书范文
2015/02/26 职场文书
高中生思想道德自我评价
2015/03/09 职场文书
mysql分表之后如何平滑上线详解
2021/11/01 MySQL
MySQL 自动填充 create_time 和 update_time
2022/05/20 MySQL
在SQL Server中使用 Try Catch 处理异常的示例详解
2022/07/15 SQL Server
html,css,javascript是怎样变成页面的
2023/05/07 HTML / CSS