在discord.js 中我创建了一个机器人。
我正在尝试使用字符串数组检查消息。
我遇到问题的代码如下所示:
module.exports = (client, message) => {
var mcheck = message.content;
for (i in mcheck) {
var checkList = ['tomato', 'green']
var inMSG = message.content.split(' ')
var check = inMSG.includes(checkList[0, 1])
if (check == true) {
message.reply('This message included green or tomato!')
}
}
}
我收到的错误是第二行中的消息
无法识别。
最佳答案
代码行:
for(mcheck 中的 i){
和
var check = inMSG.includes(checkList[0,1])
可能是被标记为无效的行。
我假设 mcheck 是一个数组。如果您尝试遍历数组,最好使用 Array.forEach , Array.map ,或者经典for声明。
for (let i = 0; i < mcheck.length; i++) {
...
}
此外,您可以执行以下操作来检查 message
字符串是否包含 checkList
数组中的任何单词:
const str = 'There is green or tomato';
const checkList = ['green','tomato']
checkList.some(substring => str.includes(substring));
关于javascript - 如何根据数组检查消息字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55989577/