字符串替换循环

时间:2016-10-29 11:36:07

标签: javascript arrays replace str-replace

我有以下代码,猜猜字符串由于某种原因没有被替换,如果我手动尝试agreements.replace('{customername}', 'some string');一切正常。

  var keywords = [
    {
      key: '{customername}',
      desc: 'Customer Name',
      map: 'user_name'
    },

    {
      key: '{vesselname}',
      desc: 'Customer Vessel Name',
      map: 'vessel_name'
    }
  ];

  var parseData = {
    user_name: "Some name",
    vessel_name: "Some Vessel",
    spot_title: "My Spot",
    today: new Date().toDateString()
  };

  var agreements = "{customername}, some customer, {vesslname} -> here";

  for(var i = 0; i < keywords.length; i++) {
    console.log(keywords[i]['key'], parseData[keywords[i]['map']]);

    agreements.replace(
        keywords[i]['key'],
        parseData[keywords[i]['map']]
    );
  }

  alert(agreements);
  

请忽略我正在添加更多细节,堆栈溢出使其成为一项要求,有趣......

1 个答案:

答案 0 :(得分:0)

将代码更改为:

  agreements = agreements.replace(
        keywords[i]['key'],
        parseData[keywords[i]['map']]
    );

相关问题