JavaScript 在生成各种页面内容时如果能结合一些模板技术,可以让逻辑和数据之间更加清晰,本文介绍 X 款 JavaScript 的模板引擎。(排名不分先后顺序)
1. Mustache
基于javascript 实现的模板引擎,类似于 Microsoft’s jQuery template plugin,但更简单易用!
2. EasyTemplate
在使用过Freemarker模 板后,感觉它的 语法比较朴实,平易近人,容易上手,于是决定按它的语法风格实现一个前端的 模板引擎,这就有了下面的EasyTemplate! EasyTemplate模板的函数大小为1.34k(未压缩),暂时只实现了 list,list index,if elseif else等功能,应该可以满足大部分的使用需求了。 EasyTemplate模板 引擎的解析速度测试,渲染1000行数据,在不同的浏览器中,平均速度大约在30豪秒以内(测试机器性能较弱)。
3. jSmart
jSmart 是著名的 PHP 模板引擎 Smarty 的 JavaScript 移植版本。
4. Trimpath
Trimpath JavaScript 是个轻量级的,基于JavaScript的,跨浏览器,采用APL/GPL开放源代码协议的,可以让你轻松进行基于模板编程方式的纯JS引擎。新浪的评论系统使用的就是此模板。
5. jade
Jade是受Haml的影响以JavaScript实现用于node的高性能模板引擎。
6. Hogan.js
来自 Twitter 的 JavaScript 模板引擎。
7. Handlebars
Handlebars 是一个 JavaScript 的页面模板库
8. doT.js
doT.js 包含为浏览器和Node.js 准备的 JavaScript 模板引擎。
9. dom.js
dom.js 是一款可用在客户端和服务器端的 JavaScript 模板引擎
10. Plates.js
Plates.js 是一个轻量级、无逻辑、DSL 的 JavaScript 模板引擎。
11. ICanHaz.js
ICanHaz.js 是一个简单而且功能强大的客户端的 JavaScript 模板引擎。
12. dotpl-js
Dotpl-JS 是一个纯javascript模板引擎,支持IF和FOR关键字,多循环衔套及字段渲染,跨浏览器支持。是一个实用的javascipt工具,页面静态化利器!
13. EJS
EJS 可以将数据和模板合并然后生成 HTML 文本。
14.artTemplate
据说100×1000数量级测试速度仅次于doT,支持原生js语法,支持子模板,支持错误行定位等;
渲染速度测试:http://aui.github.io/artTemplate/test/test-speed.html
托管于GitHub:https://github.com/aui/artTemplate
据说又一个最轻巧的javascript模板引擎,解析速度竟然声称是artTemplate的30倍?不过具体我没亲自测试过。
oschina开源库:http://git.oschina.net/fushanlang/javascript-template
16.jCT
无需过多介绍,介绍,自己到GitHub上查阅吧。
演示: http://jsct.googlecode.com/svn/trunk/jCT/example/index.html
编者注:个人认为,只要是开源共享的资源,无论是作者还是成果物大家都要给予尊重和支持,不需要在所谓的渲染速度、解析速度上过于较真,毕竟各自模板引擎的内部处理的繁琐程度不同,兼容的语法也各不一样,再者,一个项目的实现方式并非大范围的使用javacript模板来处理,10万级的处理任务毕竟是少数,选择一个适合自己项目的模板引擎胜过边边角角、刻薄的PK。
近期评论