Я хочу использовать статически определенный шаблон для построения URL.Форматировать шаблон строки с переменными в Javascript
Я пытаюсь использовать функцию ES6 строку интерполяции для этого
var template = "http://example.com/?name=${name}&age=${age}";
var name = "John";
var age = "30";
var url = `${template}`;
Ожидаемый результат: http://example.com/?name=John&age=23
Фактический результат: http://example.com/?name= $ {имя} & возраст = $ {возраст}
В случае, если это не может быть сделано со строчной интерполяцией, существует ли какой-либо лучший способ, чем String.prototype.replace
, например
var url = template.replace(/\${name}/,"John").replace(/\${age}/, 23);
Так они работают; расширение шаблона не рекурсивно расширяет замещенные строки. – Pointy
'name' определяется после определения строки шаблона. 'template' не является литералом шаблона. – guest271314
Подобный вопрос, хотя и обрамлен по-разному: http://stackoverflow.com/q/30003353/215552 –