实现方法 render(tmpl, data)
,将模板 tmpl
中的占位符,替换填充为 data
数据
const tmpl = "I'm {{name}}. I'm {{age}} years old.";
const data = { name: "Lucy", age: "23" };
// --> const result = "I'm Lucy. I'm 23 years old.";
版本一
function render(tmpl, data) {
return tmpl.replace(/\{\{(.*?)\}\}/g, (match, key) => data[key.trim()]);
}
const result = render(tmpl, data);
版本二
String.prototype.render = function (data) {
return this.replace(/{{(.*?)}}/g, (match, key) => data[key.trim()]);
};
const result = tmpl.render(data);
转自:一行代码实现一个简单的模板字符串替换
打开App,阅读手记