Возникли проблемы с объединением двух переменных в одно выражение if - PullRequest
0 голосов
/ 30 октября 2018

Просто начинаю работать с кодированием и не могу представить, как написать этот код:

var userAge = prompt("Are you old enough to vote? Lets check, enter your age.","");
        var citizen = prompt("Are you a US citizen? Y or N","");

        if(citizen = y && userAge >= 18)  
        {
            alert("Congrats, you can vote!");
        }else
        {
            alert("Sorry you can vote just yet");
        }

        document.write("<br/>");

        if(citizen = n && userAge < 18)
        {
            document.write("but at least you have your youth");

        }else if (citizen = y && userAge > 18)

            {
            document.write("You should be registered to vote! If not, visit www.usa.gov/register-to-vote");
            }

Есть идеи? Спасибо за ваше время и поддержку.

Ответы [ 2 ]

0 голосов
/ 30 октября 2018

У вас есть некоторые избыточности в вашем коде (в том числе пара мест, где вы проверяете, есть ли у обоих граждан y и возраст> 18 (хотя в одном месте вы проверяете> =). Однако самые большие проблемы, с которыми я сталкиваюсь в том, что у вас нет строковых значений в кавычках, и вам нужно использовать оператор == в качестве оператора сравнения. Оператор одиночного = - это оператор присваивания для присвоения значения переменной.

0 голосов
/ 30 октября 2018
  1. Для сравнения == или ===. = используется для назначения.
  2. Когда пользователь вводит, его ввод будет записан в виде строки. Предполагая, что они будут отвечать только прописными буквами 'Y' или прописными буквами 'N', ваш код должен выглядеть примерно так:

var userAge = prompt("Are you old enough to vote? Lets check, enter your age.", "");
var citizen = prompt("Are you a US citizen? Y or N", "");

if (citizen === 'Y' && userAge >= 18) {
  alert("Congrats, you can vote!");
} else {
  alert("Sorry you can vote just yet");
}

document.write("<br/>");

if (citizen === 'N' && userAge < 18) {
  document.write("but at least you have your youth");
} else if (citizen === 'Y' && userAge > 18) {
  document.write("You should be registered to vote! If not, visit www.usa.gov/register-to-vote");
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...