doT.js非常的简洁。全部代码也就200行不到。它的基本思路就是通过强大的正则表达式,把模块转变成可执行的函数,动态生成html字符串。核心new Function(c.varname, str);
对于Function的介绍,可以移步到:http://www.w3school.com.cn/js/pro_js_functions_function_object.asp
这里面可以学到很多正则表达式的例子:
+?与.+的区别 https://zhidao.baidu.com/question/475366693.html
replace配合正则表达式()的用法:
[\s\S]+? 匹配任何字符和非字符,比如 for(var prop in it) {
(\}?)+ 匹配""空字符串和}, +前面好像必须有(),要不然不生效。这里()好像也起到强调的作用,强调+指的对象就是()里面的。
doT.js用法:http://www.cnblogs.com/kuikui/p/3505768.html
doT.js原理解剖:http://jinlong.github.io/doT/