일반적으로 코드는 위에서 아래 방향으로 순차적으로 실행되는데, 제어문을 사용하면 코드의 실행 흐름을 인위적으로 제어할 수 있다!
⭐조건에 따라 코드 블록을 실행(조건문)하거나 반복 실행(반복문)할 때 사용함!
조건문이란🤔
주어진 조건식의 평가 결과에 따라 코드 블록(블록문)의 실행을 결정하는 구문
*조건식은 불리언 값으로 평가될 수 있는 표현식
조건문에는 if...else문과 switch문으로 두가지 조건문이 있다!
🔸if...else문
- 주어진 조건식(불리언값으로 평가될 수 있는 표현식)의 평가 결과
- 조건식의 평가 결과가 true일 경우 if문의 코드 블록이 실행되고, false일 경우 else 문의 코드 블록이 실행됨
- if문의 조건식은 불리언 값으로 평가되어야 한다
- 조건식을 추가하여 조건에 따라 실행될 코드 블록을 늘리고 싶으면 else if문을 사용한다
if(조건식1){
//조건식1이 참일때 실행시킬 코드블록
} else if(조건식2){
//조건식2가 참일때 실행시킬 코드블록
} else {
//조건식1,2 모두 거짓일때 실행시킬 코드블록
}
*if문과 else문은 한번만 사용, else if문과 else문은 사용해도 사용하지 않아도 됨!(옵션)
if...else - JavaScript | MDN
if 문은 지정한 조건이 참인 경우 명령문(statement)을 실행합니다. 조건이 거짓인 경우 또 다른 명령문이 실행 될 수 있습니다.
developer.mozilla.org
🔸삼항 조건 연산자
- 대부분의 if...else문은 삼항 조건 연산자로 바꿔 쓸 수 있음!
- 조건식 ? 조건식이 참일때 실행시킬 코드 : 조건식이 거짓일때 실행시킬 코드;
👇if...else문
let num = 2;
if(num % 2 === 0){
console.log('짝수')
}else {
console.log('홀수')
}
👇위에 if...else문을 삼항 조건 연산자로 바꿈
let num = 2;
num % 2 === 0 ? console.log('짝수') : console.log('홀수');
조건 (삼항) 연산자 - JavaScript | MDN
조건 (삼항) 연산자는 JavaScript에서 세 개의 피연산자를 받는 유일한 연산자입니다. 앞에서부터 조건문, 물음표(?), 조건문이 참(truthy)일 경우 실행할 표현식, 콜론(:), 조건문이 거짓(falsy)일 경우
developer.mozilla.org
🔸switch문
- 여러 조건을 검사하고, 특정 변수의 값에 따라 여러 코드 블록 중 하나를 실행
- if...else문은 논리적으로 참,거짓으로 실행할 코드 블록을 결정하지만,
switch문은 다양한 상황(case)에 따라 실행될 코드 블록을 결정할 때 사용함 - break문이 없다면 case 문의 표현식과 일치하지 않더라도 실행 흐름이 다음 case 문으로 연이어 이동함
switch(표현식) {
case 표현식1:
switch문의 표현식과 표현식1이 일치하면 실행될 문;
break;
case 표현식2:
switch문의 표현식과 표현식2가 일치하면 실행될 문;
break;
default:
switch문의 표현식과 일치하는 case문이 없을 때 실행될 문;
}
switch - JavaScript | MDN
The switch statement evaluates an expression, matching the expression's value against a series of case clauses, and executes statements after the first case clause with a matching value, until a break statement is encountered. The default clause of a switc
developer.mozilla.org
if...else문으로 해결할 수 있다면 switch문보다 if...else문을 사용하는 편이 좋다!
하지만 조건이 너무 많아서 if...else문보다 switch문을 사용했을 때 가독성이 더 좋다면 switch문을 사용하는 편이 좋음!
'자바스크립트' 카테고리의 다른 글
[JS]함수(함수란,함수 선언문, 함수 표현식, 생성자 함수, 화살표 함수) (0) | 2024.10.07 |
---|---|
[JS]제어문(반복문) (0) | 2024.10.07 |
[JS]기본 문법(데이터 타입) (4) | 2024.10.02 |
[JS]기본 문법(변수) (0) | 2024.10.01 |
[JS]자바스크립트란 (1) | 2024.10.01 |