Что не так с сценарием возрастного диапазона? - PullRequest
0 голосов
/ 20 октября 2010

Я работаю со сценарием, который будет проверять возраст с текущей даты, и очень простой логикой, которая заключается в вводе года.Вот код:

<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Date Check</title>
<script language="javascript" type="text/javascript">
function check()
{
    var curtime = new Date;
    var curyear = curtime.getFullYear();
    var inpyear = document.getElementById('txtdate').value;
    if(inpyear.length == 4)
    {
        var result = curyear - inpyear;
        if(result >= 18 || result <= 100)
        {
            alert('Welcome');
        }
        else
        {
            alert('Your Too Much Old or Young to see the Site');
        }
    }
    else
    {
        alert('Please Put the  4 Digit Year Example : 1987');
    }

}
</script>
</head>

<body>
Enter Year: <input type="text" id="txtdate" />
<input type="button" onclick="check();" value="Check" />
</body>
</html>

Проблема в том, что если я вхожу даже в 1999 году, который меньше 18, но он все же дает сообщение приветствия, но это не должно соответствовать условию if, потому что я допустил диапазонс 18-100.Есть ли ошибка типа или в чем ошибка?

Ответы [ 2 ]

2 голосов
/ 20 октября 2010
if(result >= 18 && result <= 100)
    {
        alert('Welcome');
    }

result >= 18 || result <= 100 всегда будет истинным.

1 голос
/ 20 октября 2010

result >= 18 || result <100 всегда будет верным.Вы должны использовать &&

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...