【发布时间】:2021-04-27 16:35:17
【问题描述】:
我对 JS 有点陌生,我在从数组中选择多个输入时遇到了麻烦。我有 2 个数组:1 个有问题,另一个有答案 问题是,在答案之一中,我想设置一个可能有多个答案的问题,像这样
let questions = [
'How many players do play on a football field?',
'How much is 6 x 12',
'How many atoms are present in water?',
'Who is Daffy Duck?'
];
let responses = [
22,
72,
3,
['duck', 'a duck'],
];
而且我不知道如何让我的代码为最后一个问题选择两个答案为真。
这是我当前有效的代码,但仅适用于第一个输入。有人告诉我在 2 个“for”循环中使用 Array.inArray,但我不知道如何设置它。
function askQuestion(IndexNumber) {
let answer = (prompt(questions[IndexNumber]));
let isCorrect = false;
if (answer == (responses[IndexNumber])) {
console.log("Correct !");
isCorrect = true;
} else {
console.log("False !");
}
addResponseToDom(IndexNumber, isCorrect);
}
let rightAnswers = 0;
let wrongAnswers = 0;
function addResponseToDom(IndexNumber, isCorrect) {
let node = document.createElement("LI");
let textnode = document.createTextNode(questions[IndexNumber]);
node.appendChild(textnode);
if (isCorrect) {
rightAnswers++;
document.querySelector('#right .responses').appendChild(node);
} else {
wrongAnswers++;
document.querySelector('#wrong .responses').appendChild(node);
}
}
function playQuiz() {
for (let IndexNumber = 0; IndexNumber < questions.length; IndexNumber++) {
askQuestion(IndexNumber);
}
document.querySelector('#right h2').textContent += '(' + rightAnswers + ')';
document.querySelector('#wrong h2').textContent += '(' + wrongAnswers + ')';
}
playQuiz();
非常感谢您的帮助!
【问题讨论】:
标签: javascript arrays for-loop