猿问

这个正则表达式为什么总是只能替换掉一个字符串??

我是想把双大括号里的包括字符串替换成真正的值,但是总是只能替换掉一个,不知道为什么?

var tpl = '/cube_xinbao_dial_result/{{report_type}}/{{query}}';

var data = {report_type:1, query: '2323'}


function render(tpl, data){

            var re = /{{([^}]+)?}}/g;

            var match = '';


            while(match = re.exec(tpl)){

                tpl = tpl.replace(match[0],data[match[1]]);

            }


            return tpl;

}


console.log(render(tpl,data));


拉莫斯之舞
浏览 429回答 1
1回答
随时随地看视频慕课网APP

相关分类

JavaScript
我要回答