본문 바로가기
Study/JavaScript

[모던 자바스크립트] 03-2 조건문

by 김만재 2023. 1. 13.
  • 조건문 Conditional Statement: 명령을 실행하기 위해 조건을 체크하는 문(statement)

 

  • if 문
    • 조건을 체크한 후 결괏값이 true이면 if문에 있는 명령을 실행하고, false이면 if문에 있는 명령은 건너뛰고 그 다음 명령을 실행
if (조건) {
	조건이 true일 때 실행할 명령(들)
}
  • if...else
    • 조건을 체크한 후 true일 때 처리할 명령과 false일 때 처리할 명령이 따로 있다면 if문과 else문을 사용.
if (조건) {
	조건이 true일 때 실행할 명령(들)
} else {
	조건이 false일 때 실행할 명령(들)
}
if (조건1) {
	조건1이 맞을 때 실행할 명령
} else if (조건2) {
	조건2가 맞을 때 실행할 명령
}
...
else {
	어떤 조건에도 맞지 않을 때 실행할 명령
}

 

 

  • 조건 연산자
    • 조건이 복잡하지 않고 true와 false가 명확할 경우 if문을 사용하지 않고 조건 연산자만으로 조건을 체크할 수 있음
(조건) ? true일 때 실행할 명령 : false일 때 실행할 명령

 

 

  • 조건 연산자 이용해 짝수와 홀수 구별하는 프로그램 만들기
let userNumber = prompt("숫자를 입력하세요.");

if (userNumber !== null) {
	userNumber = parseInt(userNumber);
	(userNumber % 2 === 0) ? alert (`${userNumber} : 짝수`) : alert (`${userNumber} : 홀수`);
}

 

 

  • swtich 문
switch (조건)
{
	case 값: 문장
     break;
    case 값: 문장
     break;
     
     ...
     
    default : 문장
}
  • default 문에는 break문이 없음
  • case 문에서 값을 지정할 때 식을 사용할 수 없음

 

  • 2개 이상의 조건 체크하기
    • 2개 이상의 조건을 체크해야 할 경우에는 논리연산자 사용
    • OR 연산자: 연산자 기호는 ||를 사용하고, 2개의 피연산자 중 하나라도 true가 있으면 결괏값은 true
    • AND 연산자: 연산자 기호는 &&를 사용하고, 2개의 피연산자 중 false가 하나라도 있으면 결괏값은 false
    • NOT 연산자: 연산자 기호는 !를 사용하고, 피연산자의 값과 정반대의 값을 가짐
op1 op2 op1 || op2 op1 && op2 !op1
true true true true false
true false true false false
false true true false true
false false false false true

 

  • 단축 평갓값 short circuit evaluation 활용하기
    • 조건식은 왼쪽→ 오른쪽 순으로 처리
    • 첫 번째 조건을 보고 빠르게 판단할 수 있도록 작성하는 것이 좋음
    • AND 연산자: 조건식 중 하나만 false여도 최종 결괏값이 false. 따라서 false가 될 확률이 높은 조건식을 첫 번째 조건식으로 사용하는 것이 좋음
    • OR 연산자: 조건식 중 하나만 true여도 최종 결괏값이 true. 따라서 true가 될 확률이 높은 조건식을 첫 번째 조건식으로 사용하는 것이 좋음
let x = 10
let y = 20
if (x > 15 && y > 15) alert ("둘 다 15보다 큽니다.") 		// y > 15는 실행하지 않음
if (y > 15 || x > 15) alert ("둘 중 하나는 15보다 큽니다.")	  // x > 15는 실행하지 않음