0

스포츠 (야구, 축구, 축구 또는 트랙)를 입력하라는 메시지를 표시하려고합니다. "골프"를 입력한다고 가정 해 봅시다. 유효한 스포츠 중 한 가지를 입력 할 때까지 계속 스포츠에 입장하도록 요청하려면 어떻게해야합니까? 스포츠는 그들이하는 분야를 결정합니다. 아래는 제 코드입니다.자바 스크립트 확인 확인?

var sport = prompt("What sport do you play? (Baseball, Football, Soccer, or Track)").toLowerCase(); 

switch (sport) { 
    case "baseball": 
     field = "Field 1"; 
     break; 
    case "football": 
     field = "Field 2"; 
     break; 
    case "soccer": 
     field = "Field 3"; 
     break; 
    case "track": 
     field = "Field 4"; 
     break; 
    default: alert("Please enter a valid sport"); 
} 
+0

당신이 사용할 수있는'while' –

+0

데릭 당신이 최고야 감사합니다! – user3538369

+0

범위 연령대에 대해 동일한 작업을 수행하려고하면 어떻게 될까요? 사용자에게 나이를 입력하라는 메시지를 표시하려고합니다. 그들이 5 세에서 9 세 사이이거나 10-15 세 사이라고 가정합시다. 내가 유효한 나이 중 한 가지를 입력 할 때까지 나이를 입력하도록 계속 요청하려면 어떻게해야합니까? 나이는 그들이 플레이하는 시간을 결정합니다. 아래는 제 코드입니다. – user3538369

답변

1
loop: 
while(true){ 
    var sport = prompt("What sport do you play? (Baseball, Football, Soccer, or Track)").toLowerCase(); 
    switch (sport) { 
     case "baseball": 
      field = "Field 1"; 
      break loop; 
     case "football": 
      field = "Field 2"; 
      break loop; 
     case "soccer": 
      field = "Field 3"; 
      break loop; 
     case "track": 
      field = "Field 4"; 
      break loop; 
     default: alert("Please enter a valid sport"); 
    } 
} 

또는

var field; 
while(true){ 
    var sport = prompt("What sport do you play? (Baseball, Football, Soccer, or Track)").toLowerCase(); 
    if(!sport || /^(baseball|football|soccer|track)$/.test(sport)){ 
     field = "Field " + ("baseball|football|soccer|track".split("|").indexOf(sport)+1); 
     break; 
    }else{ 
     alert("Please enter a valid sport"); 
    } 
} 
+0

야, 너 정말 끝내줘! 나는 또 다른 질문이있다. 내가 나이에 대해 똑같은 일을하려고한다고 말하게한다. – user3538369

+0

@ user3538369 - 나는 나이별로 의미하는 것이 무엇인지 이해하지 못합니다. –

+0

아래 코드는 제 코드입니다. var age = prompt ("몇 살이니?"); var practiceTime = age; if (age> 15) {practiceTime = "6:00 pm"; } else if (age> 12) {practiceTime = "오후 5:00"; } else if (age> 9) {practiceTime = "오후 4:00"; } else if (age> 4) {practiceTime = "오후 3:00"; } else if (isNaN (age)) {alert (age + ""+ "는 유효한 나이가 아닙니다. 유효한 나이를 입력하십시오."); } – user3538369