如何解决Discord.js |如何读取消息中的数字?
我正在尝试为我的不和谐机器人制作一个游戏:机器人选择一个随机数,然后用户尝试通过机器人的指导找到数字。我尝试过这件事,但是当我发送消息(我发送一个数字)时,它会变成 NaN。为什么会发生这种情况,我该如何解决?
let randomNumber = (Math.floor( Math.random() * (100)))
let usersAnswer = parseInt(message.content)
if (!message.author.bot && message.content === "!pick number"){
message.reply("I kept! :check: ").then(j => {
message.channel.awaitMessages(( message,user) => (user.id === message.author.id && randomNumber < usersAnswer || randomNumber > usersAnswer),{max: 1,time: 10000}).then(j => {
if (usersAnswer < randomNumber) {
message.reply("Increase! :arrow_up:" + usersAnswer) //I add usersAnswer to the bot's message because I want to see what it reads my message like in Discord
}
else {
message.reply("Decrease! :arrow_down:" + usersAnswer)
}
})
})
}
解决方法
如果你使用 parseInt()
你需要在使用这个方法之前设置一个基数。我以10为例。
\newcommand{\textvar}[1]{
\textbf{
\Sexpr{
# Here,I would like to use the one argument of my \textvar command to do somthing in R
}
}
}
或者您也可以简单地使用 let usersAnswer = parseInt(message.content,10)
if (!message.author.bot && message.content === "!pick number"){
message.reply("I kept! :check: ").then(j => {
message.channel.awaitMessages(( message,user) => (user.id === message.author.id && randomNumber < usersAnswer || randomNumber > usersAnswer),{max: 1,time: 10000}).then(j => {
if (usersAnswer < randomNumber) {
message.reply("Increase! :arrow_up:" + usersAnswer) //I add usersAnswer to the bot's message because I want to see what it reads my message like in Discord
}
else {
message.reply("Decrease! :arrow_down:" + usersAnswer)
}
})
})
}
:
Number()
如果我是你,我会添加一个检查,如果 usersAnswer 甚至是一个数字,否则输出也可能是 NaN。) 您只需添加以下行即可完成此操作:
let usersAnswer = Number(message.content)
if (!message.author.bot && message.content === "!pick number"){
message.reply("I kept! :check: ").then(j => {
message.channel.awaitMessages(( message,time: 10000}).then(j => {
if (usersAnswer < randomNumber) {
message.reply("Increase! :arrow_up:" + usersAnswer) //I add usersAnswer to the bot's message because I want to see what it reads my message like in Discord
}
else {
message.reply("Decrease! :arrow_down:" + usersAnswer)
}
})
})
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。