Замена текста внутри фигурных скобок JavaScript

Я пытаюсь использовать JavaScript для динамической замены содержимого внутри фигурных скобок. Вот пример моего кода:

var myString = "This is {name}'s {adjective} {type} in JavaScript! Yes, a {type}!";
var replaceArray = ['name', 'adjective', 'type'];
var replaceWith = ['John', 'simple', 'string'];

for(var i = 0; i <= replaceArray.length - 1; i ++) {
  myString.replace(/\{replaceArray[i]\}/gi, replaceWith[i]);
}

alert(myString);

Приведенный выше код должен выводить «Это простая строка Джона в JavaScript! Да, строка!».

Вот что происходит:

  1. нам дана строка со значениями в фигурных скобках, которые необходимо заменить
  2. , цикл использует replaceArray для нахождения всех значений в фигурных скобках, которые необходимо заменить
  3. , эти значения вместе с фигурными скобками будут заменены соответствующими значениями в Массив replaceWith

Однако мне не повезло, тем более что одно значение может быть заменено в нескольких местах , и что я имею дело с динамическим значением внутри регулярного выражения.

Кто-нибудь может помочь мне это исправить, используя аналогичную настройку, как указано выше?

14
задан Oliver Spryn 17 March 2011 в 02:53
поделиться