Este é apenas um pequeno método auxiliar que uso em JavaScript um pouco, é uma extensão da String
classe que fornece substituição de parâmetros básicos, você poderia chamá-lo igualmente String.format()
ou mesmo String.$()
sem irritar os deuses … de qualquer maneira, é uma maneira conveniente e mínima para fazer strings interpoladas em JS.
String.prototype.template = function (o) {
return this.replace(/{([^{}]*)}/g,
function (a, b) {
var r = o[b];
return typeof r === 'string' ||
typeof r === 'number' ?
r : a;
}
);
};
O uso é simples e razoavelmente flexível, embora não hajaString.format
formatação de estilo printf ou C # .
"{0} an array is {1}".template(["Using","simple"]);
Ou para um pouco de riqueza semântica, use um POO (objeto antigo simples)
"Your {list} list has {count} entries.".
template(
{
list: "Contacts",
count: 120
});