Javascript 如何使用彼此内部的if语句生成chatbot(Node.js)
我正在尝试使用node.js创建简单的聊天机器人,但是我在使if语句正常工作时遇到了问题。我希望if语句彼此在一起,这样用户只能聊天“你好吗?”?如果他已经打招呼了。我目前使用的方法根本不起作用。我不确定是否有不同的方法来做这件事,或者我只是做错了??提前谢谢你Javascript 如何使用彼此内部的if语句生成chatbot(Node.js),javascript,node.js,chatbot,statements,Javascript,Node.js,Chatbot,Statements,我正在尝试使用node.js创建简单的聊天机器人,但是我在使if语句正常工作时遇到了问题。我希望if语句彼此在一起,这样用户只能聊天“你好吗?”?如果他已经打招呼了。我目前使用的方法根本不起作用。我不确定是否有不同的方法来做这件事,或者我只是做错了??提前谢谢你 if (message == "Hello") { chat.respond(id, "Hi!") if (message == "How are you?") { chat.respond(id, "Very good sir!")
if (message == "Hello") {
chat.respond(id, "Hi!")
if (message == "How are you?") {
chat.respond(id, "Very good sir!")
}
}
我认为您的代码应该是这样的:
if (message == "Hello") {
chat.response(id, "Hi!")
} else if (message == "How are you?") {
chat.response(id, "Very good sir!")
}
原始代码的问题是,如果消息已经是Hello,那么它将永远不会等于How are you?,因此内部if将永远不会执行
如果你想要这个,你好吗?要在Hello之后,您可以执行以下操作:
// place this variable in an outer scope
var receivedHello = false
// your if statement
if (message == "Hello") {
receivedHello = true
chat.response(id, "Hi!")
} else if (receivedHello && (message == "How are you?")) {
chat.response(id, "Very good sir!")
}