写了个简单的Javascript模版引擎

因为工作需要兼练习,写了一个简单的Javascript模版引擎:https://github.com/fillano/fit

可以在伺服器端及浏览器端使用(工作上是在浏览器端使用),透过npm或bower都可以安装:

用npm安装的话:

npm install fit-template

用bower安装的话:

bower install fit-template

因为工作需求简单,所以功能也非常简单,只支援赋值、foreach迴圈及if/else逻辑分支三种语法。没有外部依赖,档案也蛮小,压缩后是3.7KB。

一个简单的hello world範例:

var fit = require('fit-template');var data = {name: 'fillano'};var template = '<div>Hello {{=$name}}</div>';var render = fit(template);console.log(render(data));//显示:<div>Hello fillano</div>

其实一行也可以:

console.log(require('fit-template')('<div>Hello {{=$name}}</div>')({name: 'hildegard'}));//显示:<div>Hello hildegard</div>

至于是要练习什么...

之前看过Douglas Crockford在美丽程式这本书中写了一个「由上而下运算子优先权」的剖析器,引发了一点兴趣,所以也想有机会时练习写一个剖析器。这个模版引擎是用简单的递迴下降剖析器的方式实作,这样要解决迴圈跟逻辑分支嵌套(Nested)好像比较容易http://img2.58codes.com/2024/emoticon06.gif。文组出来的逻辑比较差XD


关于作者: 网站小编

码农网专注IT技术教程资源分享平台,学习资源下载网站,58码农网包含计算机技术、网站程序源码下载、编程技术论坛、互联网资源下载等产品服务,提供原创、优质、完整内容的专业码农交流分享平台。

热门文章