Javascript:我想在某个时刻停止代码。

时间:2017-03-24 14:47:59

标签: javascript

我想问它&#34;你的年龄是多少?&#34;如果年龄<&lt; 21我希望随后的警报和页面立即关闭。在这种情况下,它仍然会带来&#34;年龄不匹配&#34;警报。编码1.5小时,不要取笑我。

var age = prompt("What is your age?");

if (age < 21) {
   alert("Access denied");  window.close();
}

if (age == 21) {
   alert("Just made it");
}

if (age > 21) {
   alert("Welcome aboard");
}
 // Confirm

if (age >= 21) {
var ageconfirm = prompt("Again?");
}

if (age==ageconfirm) {
   alert("Just checkin'")
}
if (age != ageconfirm) {alert("Age doesn't match"); 
}
if (ageconfirm <21) {  window.close(); 
}

3 个答案:

答案 0 :(得分:0)

这应该做你想做的事情:

var age, ageconfirm;
age = prompt("What is your age?");

if (age < 21) {
   alert("Access denied");  window.close();
} else if (age == 21) {
   alert("Just made it");
} else if (age > 21) {
   alert("Welcome aboard");
}
// Confirm

if (age >= 21) {
    ageconfirm = prompt("Again?");
    if (age == ageconfirm) {
        alert("Just checkin'");
    } else {
        alert("Age doesn't match");
    }
} else {
    window.close();
}

要记住的一件事是prompt返回一个字符串,因此使用parseInt可能是个好主意。然后,您可以使用===来比较==

答案 1 :(得分:0)

您可以使用return来停止执行:

var age = prompt("What is your age?");

if (age < 21) {
   alert("Access denied");
   return window.close();
}

if (age == 21) {
   alert("Just made it");
}

if (age > 21) {
   alert("Welcome aboard");
}

// Confirm

if (age >= 21) {
    var ageconfirm = prompt("Again?");
}

if (age  == ageconfirm) {
   alert("Just checkin'")
}
if (age != ageconfirm) {
    alert("Age doesn't match"); 
}
if (ageconfirm < 21) {
    return window.close(); 
}

答案 2 :(得分:0)

问题是你的第二个代码块应该嵌套在if块中。在您说“如果用户年满21岁”的那一刻,提示他们再次输入他们的年龄。&#39;然后退出if块,因此无论原始答案是什么,都执行最后一个代码。

var age, ageconfirm

age = prompt("What is your age?");

if (age < 21) {
   alert("Access denied");  window.close();
}
else if (age == 21) {
   alert("Just made it");
}
else if (age > 21) {
   alert("Welcome aboard");
}

// Confirm
if (age >= 21) {
    ageconfirm = prompt("Again?");

  if (age == ageconfirm) {
     alert("Just checkin'")
  }
  else if (age != ageconfirm) {
    alert("Age doesn't match"); 
  }
  else if (ageconfirm < 21) {  
    window.close(); 
  }
}

这是我要检查的解决方案的JSFiddle:

https://jsfiddle.net/00wcbaox/2/