簡單的模板引擎實現機理,利用正則表達式中的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)
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章