javascript - 将文本分配给字符串内的变量

标签 javascript node.js mongodb

我将字符串保存到 mongoDB 中,预设变量为

'Current time is ${time}'

之后,我在其他地方检索该字符串,并希望将值分配给时间

它看起来像这样

const time = '15:50'    
const response = result //saves string retreived from mongo

res.json({
   response: response
})

但是返回'当前时间是${time}'而不是'当前时间是15:50'

我知道字符串应该在 `` 中而不是单引号中以使变量起作用,但不确定如何将其实现为 mongo 的输出

有人可以指出我正确的方向吗?

最佳答案

另一种方法是将字符串和参数传递给函数,并在参数对象上reduce:

var str = 'Current time is ${time}';
var params = { time: '13:30' };

function merge(str, params) {
  return Object.keys(params).reduce((out, key) => {
    return str.replace(`\${${key}}`, params[key]);
  }, '');
}

console.log(merge(str, params));

关于javascript - 将文本分配给字符串内的变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47369606/

相关文章:

node.js - 如何从 .bash_profile 访问我的 nvm Node 版本号以自定义终端提示符?

node.js - Mongoose 中的模式关联

java - 使用 And 运算符进行 spring data mongodb 全文搜索

javascript - Storage get() 在 ionic 2 中永远不会返回值

javascript - webpack 从不同文件导入函数

javascript - 这些字符在 Javascript 中做什么

node.js - 为什么 request.body 未定义?

javascript - 如何等到循环内的异步进程完成后再退出循环?

node.js - 由于 Npm 安装崩溃,无法安装 Scrypt

ruby-on-rails - 通过引用属性查询 Mongoid