我正在处理将从当前日期检查年龄的脚本以及通过输入年份的非常简单的逻辑。这是代码:
<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>
问题是如果我进入甚至不到18岁的1999,但它仍然给出了欢迎的信息,但是因为我允许范围从18到100,所以不应该是真的。是否有任何类型错误或错误是什么?
答案 0 :(得分:2)
if(result >= 18 && result <= 100)
{
alert('Welcome');
}
result >= 18 || result <= 100
永远都是真的。
答案 1 :(得分:1)
result >= 18 || result <100
永远都是真的。您必须使用&&