无论文本大小写如何,我都需要验证输入

I need to validate an input regardless of text capitalization

我写了一个简短的脚本,可以作为小测验使用。它会显示一个对话框,您可以提出问题并输入答案。但是,我的意图是无论答案是大写还是小写,应用程序都应该给你一个分数。 我的问题是,无论输入的文本大小写如何,我如何给出一个分数? 我看到有人在代码中的某个地方使用了 toUpperCase(),但我不太确定。

let questions = [
  ["Who created Demon Slayer?", 'Gotouge'],
  ['Who was the first demon that ever existed?', 'Muzan'],
  ['Who was the flame pillar of the Demon Slayer Corps?', 'Rengoku']
];


let item = '';
let score = 0;

function quiz (arr){
  for (let i = 0; i<questions.length; i++){
    let interrogate = prompt(`${arr[i][0]}`);
    if(interrogate === arr[i][1]){
      score++;
    }
  }
}


quiz(questions);
console.log(score);

在比较正确答案和用户输入之前,您可以同时使用 toLowerCase()toUpperCase()

改变这个, interrogate === arr[i][1]

作为, interrogate.toLowerCase() === arr[i][1].toLowerCase()

这应该是你想要的,我稍微简化了你的代码。

我还添加了trim()来删除结尾和开头的白色space。

let questions = [
  ["Who created Demon Slayer?", 'Gotouge'],
  ['Who was the first demon that ever existed?', 'Muzan'],
  ['Who was the flame pillar of the Demon Slayer Corps?', 'Rengoku']
];

let score = 0;
function quiz (arr){
  for (let i = 0; i<questions.length; i++){
    let interrogate = prompt(`${arr[i][0]}`);
    if(interrogate.trim().toLowerCase() === arr[i][1].toLowerCase()) score++;  
  }
}
quiz(questions);
console.log(score);