首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Javascript -聊天机器人

Javascript -聊天机器人
EN

Stack Overflow用户
提问于 2013-04-23 19:29:33
回答 2查看 2K关注 0票数 1

多年来,我一直在模式匹配聊天机器人中使用以下代码。一个人在输入框中输入,聊天机器人在输出框中响应。

这只是一系列的"if语句“,而这只是其中的一小部分。

如果有人输入"yes“,机器人会返回以下内容,但在消息4中,我会问一个问题。一旦这个问题被问到,它就不会再触发,而这正是我想要的。

我不想这个问题被一遍又一遍地问。直到最近,这一切都奏效了。我不明白为什么它不再起作用了。

代码语言:javascript
复制
var yes_q4_asked="false";

if (input.search("yes")!= -1) {  
message[0] = "ok, yes it is."; 
message[1] = "yes, I suppose so."; 
message[2] = "ok, I understand."; 
message[3] = "ok, I guess so."; 
message[4] = "yeah, I reckon so. Say what color are your eyes?"; 
message[5] = "yes, I thought as much."; 
num = [Math.floor(Math.random()*6)]
if ((num==4) && (yes_q4_asked=="false"))
{ 
yes_q4_asked=="true";
document.result.result.value = message[num];
return true;
}
while (num==4)
{
num = [Math.floor(Math.random()*6)]
}
document.result.result.value = message[num]; 
return true;} 
EN

回答 2

Stack Overflow用户

发布于 2013-04-24 07:04:07

有人发现了我的问题。以上代码中的这一行:

代码语言:javascript
复制
yes_q4_asked=="true";

应该是:

代码语言:javascript
复制
yes_q4_asked="true";

one =不是two ==

票数 3
EN

Stack Overflow用户

发布于 2013-04-23 19:33:55

  • document.result.result.are你确定这是correct?
  • var yes_q4_asked="false";为什么不使用布尔值?
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/16168238

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档