JavaScript 这个第二个do{}..while里面的if,for循环为啥不执行直接跳到第一个继续循环 一脸蒙蔽 求指教
do{vara=Number(prompt("这个月多少天?30或31"));if(a===30||a===31){do{varb=Number(prompt("这个月的...
do{
var a = Number(prompt("这个月多少天?30或31"));
if( a === 30 || a === 31){
do{
var b = Number(prompt("这个月的1号是周几? 1-7"));
if ( b >= 1 && b <=7 ) {
for(i = b ; i<=a ; i++){
if(i === 7 || i === 14 || i=== 21 || i === 28){
console.log("今天周日,睡懒觉");
}
}
}else{
alert("输入无效请重新输入2");
}
}while(isNaN(b) || b < 1 || b > 7 );
}else{
alert("输入无效请重新输入1");
}
}while(isNaN(a) || a != 30 || a != 31); 展开
var a = Number(prompt("这个月多少天?30或31"));
if( a === 30 || a === 31){
do{
var b = Number(prompt("这个月的1号是周几? 1-7"));
if ( b >= 1 && b <=7 ) {
for(i = b ; i<=a ; i++){
if(i === 7 || i === 14 || i=== 21 || i === 28){
console.log("今天周日,睡懒觉");
}
}
}else{
alert("输入无效请重新输入2");
}
}while(isNaN(b) || b < 1 || b > 7 );
}else{
alert("输入无效请重新输入1");
}
}while(isNaN(a) || a != 30 || a != 31); 展开
1个回答
展开全部
var isDone = false;
do {//do 1
if(isDone)break;
var a = Number(prompt("这个月多少天?30或31"));
if (a == 30 || a == 31) {
do {//do 2
var b = Number(prompt("这个月的1号是周几? 1-7"));
if (b >= 1 && b <= 7) {
for (i = 1; i <= a; i++) {
if ((i + b) % 7 == 1) {
console.log("本月" + i + "日是星期天,可以睡懒觉");
}
}
isDone = true;
} else {
alert("输入无效请重新输入2");
}
} while (isNaN(b) || b < 1 || b > 7);
} else {
alert("输入无效请重新输入1");
}
} while (isNaN(a) || a != 30 || a != 31);
蛮好玩的,祝睡的愉快!
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询