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);
展开
 我来答
温陌觉M
2017-02-25 · TA获得超过369个赞
知道小有建树答主
回答量:251
采纳率:80%
帮助的人:138万
展开全部
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);

蛮好玩的,祝睡的愉快!

推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式