2

我有这个 JSON 对象:

"question": "The question, asked by ${users[index]}, was: \n\n${questions[index]}."

在一个名为“config.json”的文件中。在一个名为“app.js”的单独文件中,我有这行代码:

message.channel.send(config.question);

当代码运行时,message.channel.send(config.question)输出:

${users[index]} 提出的问题是:

${问题[索引]}。

有没有办法将${users[index]}${questions[index]}作为模板文字?本质上我希望输出是这样的:

史蒂夫提出的问题是:

你好世界!。

(假设users[index] == "Steve"questions[index] == "Hello World!"

我四处寻找答案,但他们都开始使用额外的 Javascript 或说这是不可能的。那么,为什么如果不可能,这会起作用吗?:

message.channel.send("The question, asked by ${users[index]}, was: \n\n${questions[index]}"); 输出:

史蒂夫提出的问题是:

你好世界!。

4

2 回答 2

2

这会起作用:

message.channel.send(eval('`'+config.question+'`'))
于 2018-07-02T13:38:50.513 回答
0

要在 JavaScript 中进行字符串插值,您需要对字符串文字使用反引号 (`)。

例如:

`The answer is ${myVar}!`

将插入myVar到您的字符串中。

于 2017-11-21T05:31:33.873 回答