摘要:簡單介紹模板引擎作為數據與界面分離工作中最重要一環,越來越受開發者關注。是新一代模板引擎,它采用預編譯方式讓性能有了質的飛躍,并且充分利用引擎特性,使得其性能無論在前端還是后端都有極其出色的表現。
簡單介紹
javascript 模板引擎作為數據與界面分離工作中最重要一環,越來越受開發者關注。
artTemplate 是新一代 javascript 模板引擎,它采用預編譯方式讓性能有了質的飛躍,并且充分利用 javascript 引擎特性,使得其性能無論在前端還是后端都有極其出色的表現。
雖然每個引擎從模板語法、語法解析、變量賦值、字符串拼接的實現方式各有所不同,但關鍵的渲染原理仍然是動態執行 javascript 字符串。
可看:http://cdc.tencent.com/?p=5723 基本原理的例子
artTemplate 高效的秘密1、預編譯
在一般的模板引擎實現原理中,因為要對模板變量進行賦值,所以每次渲染都需要動態編譯 javascript 字符串完成變量賦值。而 artTemplate 的編譯賦值過程卻是在渲染之前完成的,這種方式稱之為“預編譯”。
2、更快的字符串相加方式
很多人誤以為數組 push 方法拼接字符串會比 += 快,要知道這僅僅是 IE6-8 的瀏覽器下。實測表明現代瀏覽器使用 += 會比數組 push 方法快,而在 v8 引擎中,使用 += 方式比數組拼接快 4.7 倍。所以 artTemplate 根據 javascript 引擎特性采用了兩種不同的字符串拼接方式。
1、引用js文件:
2、頁面中,使用一個type="text/template"的script標簽存放模板: