javascript数组if语句

javascript数组if语句,javascript,arrays,Javascript,Arrays,我试图为一周中的几天创建一个数组,但如果输入的数字未指定值,我希望它显示一个错误。这就是我所拥有的,但在我的if声明之后,它说“今天是未定义的”。我想这是因为阵列。有没有办法将if语句作为数组的一部分,以便只弹出一条消息 var dayNum=prompt('enter as number from 0 to 6',''); 如果(dayNum>='7'); { 警报(“收到无效输入,请重试”) } var工作日=[“太阳”、“周一”、“周二”、“周三”、“周四”、“周五”、“周六”、“周日

我试图为一周中的几天创建一个数组,但如果输入的数字未指定值,我希望它显示一个错误。这就是我所拥有的,但在我的if声明之后,它说“今天是未定义的”。我想这是因为阵列。有没有办法将if语句作为数组的一部分,以便只弹出一条消息

var dayNum=prompt('enter as number from 0 to 6','');
如果(dayNum>='7');
{
警报(“收到无效输入,请重试”)
} 
var工作日=[“太阳”、“周一”、“周二”、“周三”、“周四”、“周五”、“周六”、“周日];

警报(“今天是”+工作日[dayNum])不需要
=7)

var dayNum=prompt('enter as number from 0 to 6','');
如果(dayNum>=7)
{
警报(“收到无效输入,请重试”)
} 
var工作日=[“太阳”、“周一”、“周二”、“周三”、“周四”、“周五”、“周六”、“周日];
警报(“今天是”+工作日[dayNum]);

document.getElementById(“demo”).innerHTML=工作日[dayNum]不需要
=7)

var dayNum=prompt('enter as number from 0 to 6','');
如果(dayNum>=7)
{
警报(“收到无效输入,请重试”)
} 
var工作日=[“太阳”、“周一”、“周二”、“周三”、“周四”、“周五”、“周六”、“周日];
警报(“今天是”+工作日[dayNum]);

document.getElementById(“demo”).innerHTML=工作日[dayNum]这是因为这里的分号正在终止语句

if (dayNum >='7');
删除分号。此外,如果输入无效,则第二个案例仍在运行。而是将其放在else语句中

var dayNum=Number(提示('enter as Number from 0 to 6','');
如果(isNaN(dayNum)| | dayNum>=7)
{
警报(“收到无效输入,请重试”)
}否则{
var工作日=[“太阳”、“星期一”、“星期二”、“星期三”、“星期四”、“星期五”、“星期六”];
警报(“今天是”+工作日[dayNum]);

}
这是因为这里的分号终止了语句

if (dayNum >='7');
删除分号。此外,如果输入无效,则第二个案例仍在运行。而是将其放在else语句中

var dayNum=Number(提示('enter as Number from 0 to 6','');
如果(isNaN(dayNum)| | dayNum>=7)
{
警报(“收到无效输入,请重试”)
}否则{
var工作日=[“太阳”、“星期一”、“星期二”、“星期三”、“星期四”、“星期五”、“星期六”];
警报(“今天是”+工作日[dayNum]);

}
您的代码中几乎没有错误。第一个是if条件后的分号,另一个是使用字符串比较而不是数字。从if条件中的数字中删除引号。数组的索引也是错误的。您正在提供一个字符串。它应该是int类型

<script>
var dayNum=parseInt(prompt('enter as number from 0 to 6', ' '));
if (dayNum >= 7)
{
alert("invalid input received, try again");

} 
else{
var weekdays = ["Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat", " "];
alert("Today is " + weekdays[dayNum]);

}
</script>

var dayNum=parseInt(提示('enter as number from 0 to 6','');
如果(dayNum>=7)
{
警报(“收到无效输入,请重试”);
} 
否则{
var工作日=[“太阳”、“周一”、“周二”、“周三”、“周四”、“周五”、“周六”、“周日];
警报(“今天是”+工作日[dayNum]);
}

您的代码中几乎没有错误。第一个是if条件后的分号,另一个是使用字符串比较而不是数字。从if条件中的数字中删除引号。数组的索引也是错误的。您正在提供一个字符串。它应该是int类型

<script>
var dayNum=parseInt(prompt('enter as number from 0 to 6', ' '));
if (dayNum >= 7)
{
alert("invalid input received, try again");

} 
else{
var weekdays = ["Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat", " "];
alert("Today is " + weekdays[dayNum]);

}
</script>

var dayNum=parseInt(提示('enter as number from 0 to 6','');
如果(dayNum>=7)
{
警报(“收到无效输入,请重试”);
} 
否则{
var工作日=[“太阳”、“周一”、“周二”、“周三”、“周四”、“周五”、“周六”、“周日];
警报(“今天是”+工作日[dayNum]);
}

实际上,如果您使用0,您将希望输入为1-7,并声明一个伪错误,例如:

var weekdays = ["Error", "Sun", "Mon", ..., "Sat"];
然后,您需要进行循环,将字符串转换为数字:

for(i=0;i<=7;i++){
   if(dayNum==i){
      dayNum=i;
   }
}

对于(i=0;i实际上,如果使用0,您将希望输入为1-7,并声明一个伪错误,例如:

var weekdays = ["Error", "Sun", "Mon", ..., "Sat"];
然后,您需要进行循环,将字符串转换为数字:

for(i=0;i<=7;i++){
   if(dayNum==i){
      dayNum=i;
   }
}
(i=0;i
var dayNum=prompt('enter as number from 0 to 6','');
对于(i=0;i=7)
{
警报(“收到无效输入,请重试”);
}
else if(dayNum==0)
{
警报(“收到无效输入,请重试”);
}
其他的
{
var工作日=[“太阳”、“周一”、“周二”、“周三”、“周四”、“周五”、“周六”、“周日];
警报(“今天是”+工作日[dayNum]);
}
var dayNum=prompt('enter as number from 0 to 6','');
对于(i=0;i=7)
{
警报(“收到无效输入,请重试”);
}
else if(dayNum==0)
{
警报(“收到无效输入,请重试”);
}
其他的
{
var工作日=[“太阳”、“周一”、“周二”、“周三”、“周四”、“周五”、“周六”、“周日];
警报(“今天是”+工作日[dayNum]);

}
您还需要使用else语句,否则第二部分也将被执行,您将收到通知,表示今天未定义。您还需要使用else语句,否则第二部分也将被执行,您将收到通知,表示今天未定义。虽然此代码可能会回答问题,但最好r包含一些上下文,解释它是如何工作的以及何时使用。从长远来看,纯代码答案没有用处。虽然这段代码可能会回答这个问题,但最好包含一些上下文,解释它是如何工作的以及何时使用它。从长远来看,纯代码答案没有用处。