常用的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 相关文章推荐
jquery 表单取值常用代码
Dec 22 Javascript
一些实用的jQuery代码片段收集
Jul 12 Javascript
JS随机漂浮广告代码具体实例
Nov 19 Javascript
Eclipse去除js(JavaScript)验证错误
Feb 11 Javascript
jquery分页对象使用示例
Apr 01 Javascript
jQuery表格插件datatables用法总结
Sep 05 Javascript
JQuery中的事件及动画用法实例
Jan 26 Javascript
javascript数组随机排序实例分析
Jul 22 Javascript
Bootstrap3制作图片轮播效果
May 12 Javascript
JavaScript——DOM操作——Window.document对象详解
Jul 14 Javascript
jQuery实现的手风琴侧边菜单效果
Mar 29 jQuery
Node.js中流(stream)的使用方法示例
Jul 16 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/03/10 PHP
mcrypt启用 加密以及解密过程详细解析
2013/08/07 PHP
javascript 添加和移除函数的通用方法
2009/10/20 Javascript
jquery更换文章内容与改变字体大小代码
2013/09/30 Javascript
学习JavaScript设计模式之状态模式
2016/01/08 Javascript
jQuery Validate表单验证插件 添加class属性形式的校验
2016/01/18 Javascript
ES6新特性之函数的扩展实例详解
2017/04/01 Javascript
JS如何实现在页面上快速定位(锚点跳转问题)
2017/08/14 Javascript
利用Angular2的Observables实现交互控制的方法
2018/12/27 Javascript
通过JS运行机制的角度说说作用域
2019/03/12 Javascript
react项目如何使用iconfont的方法步骤
2019/03/13 Javascript
js中async函数结合promise的小案例浅析
2019/04/14 Javascript
node.js使用stream模块实现自定义流示例
2020/02/13 Javascript
python 运算符 供重载参考
2009/06/11 Python
Python中请使用isinstance()判断变量类型
2014/08/25 Python
Python使用wxPython实现计算器
2018/01/30 Python
python队列queue模块详解
2018/04/27 Python
python地震数据可视化详解
2019/06/18 Python
pytorch 实现tensor与numpy数组转换
2019/12/27 Python
使用PyQt5实现图片查看器的示例代码
2020/04/21 Python
Python用requests库爬取返回为空的解决办法
2021/02/21 Python
python实现简单的学生管理系统
2021/02/22 Python
法国大使拉杆箱官网:DELSEY Paris
2018/03/20 全球购物
PatPat阿根廷:妈妈们的购物平台
2019/05/30 全球购物
俄罗斯设计师家具购物网站:The Furnish
2019/12/01 全球购物
网上开店必备创业计划书
2014/01/26 职场文书
优秀班集体获奖感言
2014/02/03 职场文书
我的理想演讲稿
2014/04/30 职场文书
四风问题自我剖析材料
2014/10/07 职场文书
交通事故被告答辩状
2015/05/22 职场文书
保护动物的宣传语
2015/07/13 职场文书
教师节随笔
2015/08/15 职场文书
幼师自荐信范文(2016推荐篇)
2016/01/28 职场文书
高考要来啦!用Python爬取历年高考数据并分析
2021/06/03 Python
Golang日志包的使用
2022/04/20 Golang
Java实现字符串转为驼峰格式的方法详解
2022/07/07 Java/Android