简单的模板引擎实现机理,利用正则表达式中的replace()方法

// 最简单的模板引擎实现机理,利用的是正则表达式中的replace()方法 // replace()的第二个参数可以是一个函数,这个函数的第二个参数提供捕获的东西,就是$1 // 结合data对象,即可进行智能的替换 var templateStr = '<p>我买了一个{{thing}},花了{{money}}元,好{{mood}}</p>' var data = { thing: '风车', money: 100, mood: '开心' } function render(templateStr,data){ return templateStr.replace(/\{\{(\w+)\}\}/g,function(findStr,$1){ // 不能打点,不能写成data.[$1],变量不能被对象打点 return data[$1] }) } var result = render(templateStr,data) console.log(result)
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章