【发布时间】:2020-08-21 16:46:25
【问题描述】:
我需要一个代表任意数字的变量,我正在构建一个聊天机器人,对话的框架是对以数字方式表示的文档的请求,为此我需要这个变量,它可以检测到它是一个数字
if(message.body.includes(numberDocument)) {
client.sendMessage(message.from, 'is the number of document: '+message.body);
}
numberDocument 代表我的变量号,但是不起作用
var numberDocument = Number
【问题讨论】:
-
我不确定我是否明白你在问什么。听起来您希望人们能够说出
!document 1234之类的话,然后让您的机器人在服务器上查找文件 1234 并使用该文件的内容进行响应。如果是这样,为什么不检查消息是否以您理解的命令之一开始,然后根据您知道该命令的其余部分应该是的模式解析句子? -
if(/^\d+$/.test(message.body))... -
我认为没有代表任何数字的值,但是您可以做许多其他事情:遍历 message.body 并使用 typeof value === "number 检查每个值",做一个像 /-?\d+\.?\d*/ 或 !Number.isNan(value) 之类的正则表达式
-
我将收到的消息将是一个数字,正如您在 if 决定中看到的那样,那是因为在此之前还有其他对话分支,为了达到这一点,我必须检测到将发送给我的消息将包含一个数字
标签: javascript node.js variables chatbot