supplant function
var template = '<table border="{border}">' + '<tr><th>Last</th><td>{last}</td></tr>' + '<tr><th>First</th><td>{first}</td></tr>' + '</table>'; var data = { first: "Carl", last: "Hollywood", border: 2 }; mydiv.innerHTML = template.supplant(data); if (typeof String.proptotype.supplant !== 'function') { String.prototype.supplant = function (o) { return this.replace(/{([^{}]*)}/g, function(a, b) { //a is $0, b is $1 (match 1) var r = o[b]; return typeof r === 'string' ? r : a; }); }; }