Construir strings com conteúdo dinâmico em JavaScript é muito grosseiro. Citação inicial, citação final, concatenar, citação inicial, citação final …
Muitas vezes me pego bagunçando quando tento digitar rapidamente.
Esta pequena função tira uma página do livro de Python e adiciona interpolação de string ao JS.
String.prototype.format = function(){
var args = arguments
return this.replace(/{{|}}|{(d+)}/g, function (m, i) {
if (m == "{{") return "{"
if (m == "}}") return "}"
return args[i]
})
}
E aqui está como você o usa:
var count = 'Three', animal = 'mice', verb = 'run', output
output = '{0} blind {1}. {0} blind {1}. See how they {2}.'.format(count, animal, verb)
É importante notar que o desempenho desta função não é grande em comparação com a concatenação – então, se você estiver trabalhando muito com strings, provavelmente não é uma boa escolha. Mas com certeza é melhor escrever.