if문

Mia Lee·2021년 11월 26일
0

Java Script

목록 보기
3/25
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
<script type="text/javascript">
	/*
	if문(else, else if문)
	- 자바에서의 if문과 문법 구조 동일
	
	[ 기본 문법 ]
	if(조건식1) {
		// 조건식1 의 판별 결과가 true 일 때 실행할 문장들...
	} else if(조건식2) {
		// 조건식 1 의 판별 결과가 false 이고, 조건식2 의 판별 결과가 true 일 때 실행할 문장들...
	} else {
		// 모든 조건식의 판별 결과가 false 일 때 실행할 문장들...
	}
	*/
	
	// 사용자의 나이를 입력받는 문장 작성(메세지 : "나이를 입력하세요.")
	// => 입력되는 나이를 age 라는 변수에 리턴받아 저장 후 출력해보기
// 	var age = prompt("나이를 입력하세요.");
// 	alert("나이 : " + age + ", 데이터타입 : " + typeof(age));
	
	// 입력받은 나이에 대해 10대인지 여부 판별하는 if문을 작성
	// => 10대일 경우 "10대입니다!" 출력하고, 아니면 "10대가 아닙니다!" 출력
	// => 단, prompt() 함수로 입력 시 string 타입이지만 
	//    숫자 데이터타입과 연산을 수행할 경우 자동으로 숫자 형태(number)로 형변환 일어남
// 	if(age >= 10 && age <= 19) {
// 		alert("10대입니다!");
// 	} else {
// 		alert("10대가 아닙니다!");
// 	}
	
	// ---------------
	// 숫자 데이터 1개를 전달받아 변수 num 에 저장하고
	// 해당 숫자에 대해 양수, 음수, 0 판별하여 출력하기
	// ex) 입력 데이터 : 10 일 경우 "10 : 양수!" 출력
// 	var num = prompt("숫자를 입력하세요.");
// 	if(num > 0) { // 양수
// 		alert(num + " : 양수!");
// 	} else if(num < 0) { // 음수
// 		alert(num + " : 음수!");
// 	} else { // 0
// 		alert(num + " : 0!");
// 	}
	// ===========================================================
	/*
	switch-case 문(switch 문)
	- 주어진 조건에 따라 값을 비교하여 일치하는 값에 대한 문장 실행
	- switch 문에서 조건식을 판별하고, case 문 뒤에 기술된 값을 비교하여
	  일치하는 값에 해당하는 case 문의 실행 문장을 실행
	- break 문을 만나거나 switch 블록이 끝날때 까지 다음 case 및
	  default 문을 모두 실행함
	- break 문은 생략도 가능함
	*/
	
	// 정수 1개를 입력받아 변수 num2 에 저장하고
	// switch-case 문을 통해 정수 값이 1, 2, 3 인지 각각 판별하여 결과를 출력하고
	// 모두 아닐 경우 "일치하는 값이 없습니다." 출력
	// ex) 입력받은 정수가 2일 경우 : "2입니다." 출력 후 종료
	//            ""      10일 경우 : "일치하는 값이 없습니다." 출력 후 종료
// 	var num2 = prompt("정수를 입력하세요.");
// 	switch(num2) { // num2 가 string 타입이므로 문자형태의 값을 case 문에서 비교해야함
// 		case "1" : // 변수 num 의 값이 "1" 일 때 실행할 문장들을 case "1" : 뒤에 기술함
// 			alert("1 입니다.");
// 			break; // 다음 case 문을 실행하지 않고, switch 문을 즉시 종료함(빠져나감)
// 		case "2" : 
// 			alert("2 입니다.");
// 			break; // 다음 case 문을 실행하지 않고, switch 문을 즉시 종료함(빠져나감)
// 		case "3" : 
// 			alert("3 입니다.");
// 			break; // 다음 case 문을 실행하지 않고, switch 문을 즉시 종료함(빠져나감)
// 		default : // 일치하는 case 문이 없을 경우 실행할 문장들을 default : 뒤에 기술함
// 			alert("일치하는 값이 없습니다.");
// 			// 더 이상 실행할 문장이 없이 switch 문이 종료되므로 break 문 생략 가능
// 	}
	// break 문을 만났을 경우 다음 실행 코드의 위치
	
	// ----------------------------------------
	// break 문의 생략을 적절하게 활용하는 예
	// => 변수 month 에 현재 몇 월 인지 입력받아 저장
	// => 입력받은 달이 1, 3, 5, 7, 8, 10, 12월일 경우 "x월은 31일까지 입니다!" 출력
	// => 입력받은 달이 2월일 경우 "x월은 28일까지 입니다!" 출력
	// => 입력받은 달이 4, 6, 9, 11월일 경우 "x월은 30일까지 입니다!" 출력
	// => 아니면 "달을 잘못 입력하셨습니다." 출력
	var month = prompt("달을 입력하세요.");
// 	switch(month) {
// 		case "1" : alert("1월은 31일까지입니다."); break;
// 		case "2" : alert("2월은 28일까지입니다."); break;
// 		case "3" : alert("3월은 31일까지입니다."); break;
// 		case "4" : alert("4월은 30일까지입니다."); break;
// 		case "5" : alert("5월은 31일까지입니다."); break;
// 		case "6" : alert("6월은 30일까지입니다."); break;
// 		case "7" : alert("7월은 31일까지입니다."); break;
// 		case "8" : alert("8월은 31일까지입니다."); break;
// 		case "9" : alert("9월은 30일까지입니다."); break;
// 		case "10" : alert("10월은 31일까지입니다."); break;
// 		case "11" : alert("11월은 30일까지입니다."); break;
// 		case "12" : alert("12월은 31일까지입니다."); break;
// 		default : alert("달을 잘못 입력하셨습니다.");
// 	}

	// break 문을 적절히 생략하여 코드 중복 제거
	switch(month) {
		case "1" : // 1월부터 12월까지
		case "3" : // 31일에 해당하는
		case "5" : // 월이 입력될 경우
		case "7" : // 각 문장에서 break 문이 없으므로
		case "8" : // 12월까지 진행되어 12월의 문장을 공통으로 실행한 후 
		case "10" : // 12월의 break 문에 의해 switch 문이 종료됨
		case "12" : alert(month + "월은 31일까지입니다."); break; // 1,3,5,7,8,10,12 일 때 실행
		case "2" : alert("2월은 28일까지입니다."); break;
		case "4" : // 4월, 6월, 9월, 11월 입력 시
		case "6" : // 모든 실행문을 11월에 위치시켜
		case "9" : // 11월의 문장을 실행한 후 switch 문이 종료됨
		case "11" : alert("11월은 30일까지입니다."); break;
		default : alert("달을 잘못 입력하셨습니다.");
	}
	
</script>
</head>
<body>

</body>
</html>










0개의 댓글