先不说啥了,上代码
function render(str,obj){
while(1){
if(!str.match(/{{.+?}}/)){
break;
}
let key=str.match(/{{.+?}}/)[0].replace(/({{)(.+?)(}})/,'$2');
let val=obj[key];
str=str.replace('{{'+key+'}}',val||'未知');
}
document.write(str);
}
render('我是{{name}},年龄{{age}},性别{{sex}}',{name:'王小明',age:'20',sex:'男'})
最后的结果就是在页面上展示了这样一段话:我是王小明,年龄20,性别男
render中传入模板str,以及对应的数据obj
其中,str并不限于文本,也可以是一段代码
看得懂就看吧,本人口才真的不行 →_→