我最近开始在nodeJs上编程。
我有不同的字符串和Json Object;
例如:
var str = 'My name is {name} and my age is {age}.';
var obj = {name : 'xyz' , age: 24};
var str = 'I live in {city} and my phone number is {number}.';
var obj = {city: 'abc' , number : '45672778282'};
我如何自动执行此过程,因此我将使用字符串和obj将字符串{}的值替换为obj(键值)。
我尝试了PUG,但无法解析。
pug.render(str, obj);
对我不起作用。
最佳答案
让我们看一下,您想要制作类似模板的东西,就像 Handlebars http://handlebarsjs.com/一样。
我将通过以下示例为您制作一个简单的 Handlebars :
function render(template, properties)
{
var result = template;
for (i in properties)
{
result = result.replace("{"+i+"}",properties[i]);
}
return result;
}
但是,这只会更改各个属性的首次出现,如果您愿意,可以使用它来替换整个模板中的所有属性:
function render(template, properties)
{
var result = template;
for (i in properties)
{
var reg = new RegExp("{"+i+"}","g");
result = result.replace(reg,properties[i]);
}
return result;
}