Simplest JavaScript templates
renderTemplate("<p class={class}>{content}</p>", { class: "foo", content: "lorem ipsum dolor" });
by gryzzly
JavaScript
var renderTemplate = function(tpl, dict) {
if (!dict) return tpl;
return tpl.replace(/\{([\w.\-]+)\}/g, function(key, submatch) {
return ({}).hasOwnProperty.call(dict, submatch) ? dict[submatch] : key;
});
};
// usage example:
document.getElementsByTagName('body')[0].innerHTML =
renderTemplate("<p class={class}>{content}</p>", {
'class': "foo",
'content': "lorem ipsum dolor"
});