Javascript模板引擎?
可能重复:Javascript模板引擎?,javascript,Javascript,可能重复: 我已经开始学习Javascript,并在网上阅读了各种不同的文章,有一件事我不太确定,那就是什么是Javascript模板引擎?他们的目的是什么?如果有人能解释这一点,那就太好了 谢谢 Kyle有不同类型的模板。基本上,这个想法是让一些字符串包含值的占位符作为输入,并使用一些函数将这些占位符替换为实际值。比如: var str = 'Hello $1'; 现在您可以编写一个javascript函数来替换$1: function printFromTemplate(){ var
我已经开始学习Javascript,并在网上阅读了各种不同的文章,有一件事我不太确定,那就是什么是Javascript模板引擎?他们的目的是什么?如果有人能解释这一点,那就太好了 谢谢
Kyle有不同类型的模板。基本上,这个想法是让一些字符串包含值的占位符作为输入,并使用一些函数将这些占位符替换为实际值。比如:
var str = 'Hello $1';
现在您可以编写一个javascript函数来替换$1
:
function printFromTemplate(){
var args = Array.prototype.slice.call(arguments),
str = args[0],
repl = args.slice(1);
function replacer(a){
var aa = parseInt(a.substr(1),10)-1;
return repl[aa];
}
return str.replace(/(\$\d+)/g,replacer) );
}
然后像这样使用它:
printFromTemplate(str,'world'); //=> Hello world
printFromTemplate('Hello $1, it\'s a really $2 day today','world','sunny');
//|=> Hello world, it's a really sunny day today
[编辑]读取外部函数后,将匿名替换函数替换为命名外部函数