Или сравнение не работает?

0

РЕДАКТИРОВАТЬ: РЕШАЕТ С ЗАЯВЛЕНИЕМ IF-ELSE

В моем выражении "if", или || сравнение не работает. Ранее я получил ответ с этого веб-сайта с этой строкой кода:

if(answers.indexOf(userAnswer.toLowerCase()) !== -1 || answers2.indexOf(userAnswer.toLowerCase()) !== -1)

Однако это не работает для моих целей (он видит, что userAnswer находится в массиве, в то время как я хочу, чтобы оператор был истинным, если третий пользовательский ответ отвечает с 3-м ответом в массиве.)

Вот мой код:

var answers = ["hello", "my name is sam", "are you healthy?", "what is your name?", "how much does it cost?", "excuse me", "i'm sorry", "yes, i understand", "no, i don't understand", "just wait please", "where is the toilet?"];

var answers2 = ["hello", "my name is sam", "how are you?", "what your name?", "how much is it?", "excuse me", "sorry", "yes, all right", "no, i don't understand", "wait, please", "where the toilet?"];

var totalYes = 0;
var ct = 0;

$("#submmit").click(function() {
    function checkAnswers() {
        var userAnswer = document.getElementById("b" + ct).value.toLowerCase();
        /**aforementioned if statement or comparison wannabe on next line**/
        if (userAnswer === answers[ct]) {
            totalYes++;
            $("#correcto").show();
        } else {
            $("#incorrecto").show();
            if (answers[ct] !== answers2[ct]) {
                alert("The correct answer is " + "'" + answers[ct] + "'" + " or " + "'" + answers2[ct] + "'");
            } else {
                alert("The correct answer is " + "'" + answers[ct] + "'");
            }
        }
    }
    checkAnswers();
    ct++;
});
  • 1
    Покажите свой HTML.
  • 0
    Пожалуйста, не "отвечайте" на ваш вопрос, редактируя вопрос. Напишите ответ (или выберите существующий ответ, который помог) и примите его.
Показать ещё 1 комментарий
Теги:

1 ответ

1

вы пытались поставить paranthesis вокруг каждой стороны OR?

if(( answers.indexOf(userAnswer.toLowerCase()) !== -1 ) || (answers2.indexOf(userAnswer.toLowerCase()) !== -1 ) );

возможно, это исправляет это, я всегда не уверен в js, но это определенно не ошибка

Ещё вопросы

Сообщество Overcoder
Наверх
Меню