【发布时间】:2021-11-24 22:57:28
【问题描述】:
我正在使用 JS 和 HTML 开发一个非常简单的聊天机器人,我有以下代码输出“答案”作为对用户所问内容的回复。这很好用,但是当我尝试实现 .includes 以检查是否已询问某个短语时,它不再输出任何内容。例如,如果用户问“你能帮忙”,它应该输出与“帮助”相同的答案,因为它包含“帮助”关键字。没有 .includes 代码可以正常工作。
function talk() {
var know = {
"Hey": "Hello!",
"Help": `You can find help by clicking <a href='https://addressname.com'target="_blank">here</a>`
};
var user = document.getElementById('userBox').value;
document.getElementById('chatLog').innerHTML = user + "<br>";
if (user in know) {
document.getElementById.includes('chatLog').innerHTML = know[user] + "<br>";
} else {
document.getElementById('chatLog').innerHTML = "I do not understand.";
}
}
【问题讨论】:
-
document.getElementById是一个函数。它期望使用参数 (document.getElementById("#selector")) 调用。它没有.includes属性。如果您只是打开控制台,它会非常清楚地告诉您:Uncaught TypeError: document.getElementById.includes is not a function。所以你甚至不需要在 Stackoverflow 上问一个关于它的问题 :o)
标签: javascript include chatbot contains