首页 > 解决方案 > 如何使用NodeJS替换作为Json对象值键的字符串

问题描述

const sentence = ' Name: ${fname} ${lname} </br> Email: ${email} </br> ' 

let valuesObj={
  "fname": "sant",
  "lname": "G",
  "email": "Test@test.com"
}

试过这段代码但没有用:

function replaceAll(str, map){
  for(key in map){
    str = str.replaceAll(key, map[key]);
  }
  return str;
}

var newString = replaceAll(sentence , valuesObj);

console.log(newString)

预期输出是:

姓名:桑特G

邮箱:Test@test.com

如何使用 NodeJs 或 Javascript 做到这一点

标签: javascriptnode.jsnode-modules

解决方案


不要在这里使用替换功能。改为:

const valuesObj = {
  fname: 'sant',
  lname: 'G',
  email: 'Test@test.com'
};

const sentence = `Name: ${valuesObj.fname} ${valuesObj.lname} </br> Email: ${valuesObj.email} </br>`;

如果您的字符串是动态创建的,那么您正在寻找类似于this的行为。


推荐阅读