Js替换字符串中特殊符号包裹的变量

15 篇文章 0 订阅
11 篇文章 0 订阅

我写的是邮件发送模版,替换 [#**#] 变量

// Replace email variable
function replaceItem(obj, word) {
  // Split word with [#
  return word.split("[#").map((item, index) => {
    // Get split word string, split #]
    let replaceArray = item.split("#]");
    // If split item into obj, use obj value replace it
    if (obj[replaceArray[0]]) {
      replaceArray.splice(0, 1, obj[replaceArray[0]])
    }
    // Return new string to reduce
    return replaceArray.join("")
  }).reduce((total, value) => {
    // Return new string to top map
    return total += value
  })
}

 Example:

let obj = {
    username: "Test",
    password: "123456"
}

let word = "Hello user your username: [#username#] and your password: [#password#]."

replaceItem(obj, word);

Result:

Hello user your username: Test and your password: 123456.

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值