无论大小写如何检查键值对是否都匹配?

问题描述 投票:0回答:1

我正在创建一个非常简单的程序,该程序在西班牙语翻译中显示英语短语和用户类型。这些短语是这样的:

const phrases = {
  "Hello": "Hola",
  "Goodbye" : "Adios",
  //etc...
}

以及匹配逻辑:

Spanish_Phrases.prototype.calculate = function() {
  this.answer = (document.getElementById("answer").value);
  var question = $("#question").text();
  var questionMatcher = phrases[question].toString();
  var answerMatcher = this.answer;
  if (questionMatcher.ToLowerCase() == answerMatcher.ToLowerCase()) {
    alert("Correct!")
  } else {
    alert("Try again");
  }
}

HTML就像这样:

<!DOCTYPE html>
<html>
<head>
    <title>Spanish</title>
</head>
<body>
    <center>
        <script src="./src/spanish.js">
        </script>
        <link href="skeleton.css" rel="stylesheet">
        <section>
            <h2>Spanish Quiz</h2>
            <h3 id="question"></h3>
      <button type="button" id="questionbutton">Get English Phrase</button>
            <form action="#" id="form" name="form" onsubmit="return false;">
                Type Spanish translation...<br>
                <input id="answer" name="answer" type="text"><br>
                <br>
                <input id="submit" type="submit" value="Submit">
            </form>
        </section>
    </center>
    <script src="https://code.jquery.com/jquery-3.4.1.min.js">
    </script>
    <script>

但是,如果用户现在输入的答案不正确,则将其标记为错误。这就是为什么我尝试使用'ToLowerCase'的原因,但是它说这不是一个函数。我在一个字符串上使用它,当我在控制台中调试时,它表明它们是st,但这会引发错误。我在代码中遗漏了一些显而易见的东西吗?帮助将不胜感激,谢谢!

javascript hash
1个回答
0
投票

.ToLowerCase() –不是函数,因为在驼峰中,您必须以小写字母开头,因此应该为.toLowerCase()

© www.soinside.com 2019 - 2024. All rights reserved.