我希望我的 Discord 机器人只回答 args[2] 中包含 1-50 的消息。所以他们选择一个 1 到 50 之间的数字,它就会回答。但如果我放入其他东西,它应该不起作用。我尝试了很多不同的方法。以下是其中一些:
if (!message.content.includes(1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50)) {
message.channel.send("Error!") };
和:
if(!args[2] === 1-50) return message.author.send("Error!");
最佳答案
对于第一个解决方案,message.content 可能是一个字符串,因此您应该将其与字符串进行比较。那将是:
if(!message.content.includes('1')) message.channel.send("Error!");
您还正在做的是为函数提供 50 个参数,但它只需要两个。 请参阅https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/includes所以这是行不通的。
对于第二个解决方案,您要检查 bool 值是否等于 -49,因为破折号是 js 中的减法符号。我会将其更改为:
if(parseInt(args[2]) < 1 && parseInt(args[2]) > 50) return message.author.send("Error!");
假设 args[2] 是数值。
关于javascript - 选出一个号码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57715167/