○제어문
코드의 실행 흐름을 원하는 방향으로 바꿀 수 있도록 해주는 것이 제어문이다.
제어문의 종류에는 조건문과 반복문이 있는데, 조건문은 if, switch가 있고, 반복문에는 for, while, do-while이 있다.
1. if
if문은 if의 뜻 처럼 만약에 라는 뜻을 담고 있다.
조건식을 지정하여, 해당 조건식의 값이 true 일때 실행문이 있는 {} 괄호 안으로 들어간다.
조건식이 일치하지 않아 false를 반환할 경우 {} 안으로 들어가지 않고, 넘어가게 된다.
if(조건문) { // 조건식이 true일 때 아래 실행문들 동작, false면 미실행
실행문;
}
if문을 사용하는 방법은 위와 같다.
const a = true;
if(a) { // 조건식이 맞으면 true 반환
console.log('Hello'); // 조건식 내부 실행문을 실행
}
console.log('world');
if속 조건식이 true이기 때문에, 조건식 내부 실행문의 값을 출력 하여, Hello 와 world 가 출력 하게 되는걸 볼 수 있다.
1-1. if속 조건식
if() 안에 들어가는 조건식은 true가 되는 값들이면 다 사용을 할 수 있다.
- 숫자형의 값을 사용하는 경우
const num = 1; const num0 = 0; // 0은 flase 로 인식 값을 if에 넣으면 출력 X if(num){ console.log('1 이상의 수는 true 로 인식'); } // 1 이상의 양수는 true 로 인식 출력
- 비교식을 사용하는 경우
const num2 = 10; if(num2 > 9){ console.log('num2 값이 %d 이므로 9보다 크기때문에 출력' , num2) }
- 논리식을 사용하는 경우
const t1 = 1; const t2 = true; const f1 = false; if(t1 && t2){ console.log('t1 && t2 는 참입니다.') }; if(t1 && f1){ console.log('and(&&) 연산은 한개라도 true 가 없다면 false 로 출력 되어 실행 (X) ') } if(t1 || f1){ console.log('or(||) 연산은 한개라도 true 라면 true 로 출력 되어 실행 (o) ') }
- ** !(not) 연산을 사용하는 경우 **
const t3 = true; if(!t3){ console.log('!true = flase가 되므로 실행 (X)') } const f2 = false; if(!f2){ console.log('!flase = true가 되므로 실행 (O)') }
2. else
if와 같이 짝꿍으로 사용 되는데,
if문은 조건이 true일 경우 실행이 되는 조건문이라면,else는 정반대이다.
else문은 if의 조건에 맞지 않을때 실행된다.
if문의 마지막 {} 괄호 끝 지점에서 사용한다. false 일 경우 실행 하기에 조건식을 따로 적지 않는다.
if(조건문) { // 조건식이 true일 때 아래 실행문들 동작, false면 미실행
실행문;
} else {
실행문; // 조건식이 true로 반환되지 못할때 동작, false면 실행
}
const a = 10;
if( a > 11) {// 11이 a보다 크기 때문에, 조건식은 false
console.log('a가 크다.');
} else {
console.log('아니다 a가 더 작다'); // else 실행문 출력
}
a 보다 11이 더 크기 때문에 조건문은 false를 반환하고, else문의 실행문을 출력하게 된다.
3. else if
조건문의 조건이 세개 이상일 경우 if와 else 만으로 감당 할 수 없다.
else if를 포함한 조건문는 조건이 3개 이상 필요할 때 사용된다.
if(조건문) { // 조건식이 true일 때 아래 실행문들 동작, false면 미실행
실행문;
} else if (if문을 제외한 조건문) { // if에서 내려왔을 경우 동작, 조건이 맞다면 true 틀리면 false 미실행
실행문;
} else { // 모든 조건문이 false일 경우 실행
실행문;
}
const year = 2022;
if( year > 2023) { // year 값이 2023보다 작으니까 flase 미실행
console.log('난 아니야!');
} else if (year == 2022) { // year의 값이 2022와 같으니까 true 실행
console.log('올해는 2022년도야!')
} else { // else if 에서 실행 되었으니 미실행
console.log('난 아니야!')
}
728x90
'STUDY > JavaScript' 카테고리의 다른 글
[JavaScript] 제어문_반복문(while) (0) | 2022.11.27 |
---|---|
[JavaScript] 제어문_조건문(switch) (0) | 2022.11.27 |
[JavaScript] 연산자(3) (0) | 2022.11.27 |
[JavaScript] 연산자(2) (0) | 2022.11.27 |
[JavaScript] 연산자(1) (0) | 2022.11.27 |
댓글