所以,我尝试使用kahoot.js-updated库制作一个kahootbotter,我发现了这段代码来回答随机问题
const Kahoot = require("kahoot.js-updated");
var kahoots = []
for (var i = 0; i < bot_count; i++) {
kahoots.push(new Kahoot);
kahoots[i].join(pin, name+" "+String(i)).catch(error => {
console.log("join failed " + error.description + " " + error.status)
});
kahoots[i].on("QuestionStart", (question) => {
question.answer(
Math.floor(
Math.random() * question.quizQuestionAnswers[question.questionIndex]
)
);
});
现在,当我尝试它时,机器人加入,但他们不回答问题,然后它给我这个错误:Math.random()* question.quizQuestionAnswers[question.questionIndex] ^ TypeError:无法读取未定义的属性(阅读“0”)
但我不知道它是如何没有定义的,因为它是图书馆的一部分。
1条答案
按热度按时间yrwegjxp1#
要生成随机答案,请使用
Math.random()
函数为数组生成随机索引,因此,在您的示例中,它是quizQuestionAnswers
,然后选择相应的答案选项,您应该知道quizQuestionAnswers
数组是否未定义或为空,此方法将不起作用这是一个例子
你应该知道代码将跳过问题,如果它仍然未定义或为空,则不提交答案
这是我从你的解释中理解的,你也可以提供一些console.log来了解