안녕하세요, 여행벌입니다.

이번에는 자바스크립트(javascript)의 제어문 중 하나인 if 문에 대해서 포스팅해보겠습니다.


조건문이란 

 제어문은 프로그램의 흐름을 제어할 수 있도록 도와주는 문장을 말합니다. 

 조건을 만족하는지의 여부에 따라 코드를 제어할 수 있는 제어문의 한 종류를 조건문이라합니다.

 즉, 조건문은 조건식의 값이 참(true)인지, 거짓(false)인지에 따라 자바스크립트 코드를 제어합니다.

if문

if 문은 조건식을 만족(true)할 경우에만 코드를 실행합니다. 기본 형태는 다음과 같습니다.

if (조건식){
	자바스크립트코드;
}

예시를 통해서 익혀보겠습니다.

var num = 10;
if(num < 500){
	console.log("hello");
 }

num 변수에는 10이라는 데이터를 저장했습니다. 조건식 num < 500 을 만족하므로 if 문은 자바스크립트 코드를 실행합니다. 따라서, "hello" 가 console 창에 출력되는 것을 확인할 수 있습니다.

조건식에 논리형 데이터(true, false)가 아닌 다른 타입이 오면 if 문이 어떻게 작동할까요??

정답은 조건식에 논리형 데이터(true, false)가 아닌 다른 형의 데이터가 입력되어도 true 또는 false로만 인식이 됩니다!!

0 null ""(빈문자) undefined

위의 4개를 제외하고는 모두 true 로 인식하고 4개는 false로 인식합니다.

else문

else 문은 조건식을 만족하는(true) 경우와 만족하지 않는(false) 경우에 따라 실행 코드가 달라집니다.

즉, 두 가지 결과가 나올 수 있는 조건문으로 기본 형태는 다음과 같습니다.

if (조건식){
	자바스크립트코드1;
}else{
	자바스크립트코드2;
}

조건식이 참이라면 자바스크립트코드1이 실행되고, 거짓이라면 자카스크립트코드2가 실행됩니다.

예시를 통해서 익혀보겠습니다.

let num = 2;
if(num % 2 == 0){
    console.log("짝수입니다.\n");
}else{
    console.log("홀수입니다.\n");
}

num 이 2이므로 조건식이 참이되고 if 문이 실행될 것입니다.

이번에는 num 을 3으로 바꿔서 실행해보겠습니다.

let num = 3;
if(num % 2 == 0){
    console.log("짝수입니다.\n");
}else{
    console.log("홀수입니다.\n");
}

"홀수입니다.\n" 가 출력되는 것을 확인할 수 있습니다.

else if 문

else if 문은 두 가지 이상의 조건식과 정해 놓은 조건을 만족하지 않았을 때 실행되는 코드로 이루어져 있습니다.

기본 형태는 다음과 같습니다.

if(조건식1){
	코드1;
}else if(조건식2){
	코드2;
}else if(조건식3){
	코드3;
}else{
	코드4;
}

원한다면 무수히 많은 조건식을 추가할 수 있습니다.

예시를 통해서 익혀보겠습니다.

let num = 5;
if(num === 0){
    console.log("num은 0입니다.\n");
}else if(num < 3){
    console.log("num은 3보다 작습니다.\n");
}else if(num < 5){
    console.log("num은 3보다 크거나 같고 5보다 작습니다.\n");
}else{
    console.log("num은 음수이거나 5보다 크거나 같습니다.\n");
}

조건문 1은 num이 0이면 참이되므로 num이 0일 때에만 작동합니다.

조건문 2는 num이 3보다 작으면 참이되므로 num이 0이 아니고(조건식1을 통과하고) 3보다 작을 때 작동합니다.

조건문 3은 num이 5보다 작으면 참이되므로 num이 0이 아니고(조건식1을 통과하고) 3보다 작지도 않고(조건식 2를 통과하고) 5보다 작으면 작동합니다.

조건문 4는 이외의 모든 경우에 작동합니다.

조건문은 한 번만 동작합니다. 즉, 조건식1과 조건식2가 동시에 만족되더라도 항상 코드1이 작동하눈 순간 조건문을 종료됩니다. 

아래 예시를 통해 자세히 익혀보겠습니다.

let num = 5;
if(num < 10){
    console.log("num은 10보다 작습니다.-1\n");
}else if(num < 10){
    console.log("num은 10보다 작습니다.-2\n");
}

num이 5이고 조건식1과 조건식 2가 동일하므로 조건식1, 조건식2 모두 참(true)가 되는 상황입니다.

조건식1과 조건식2를 모두 만족하지만 수행되는 코드는 코드1 뿐입니다.


오늘은 조건문에 대해서 알아보았습니다.

조건문은 정말정말 많이 쓰이는 제어문으로 포스팅 예시 외에도

여러가지 예시를 혼자 연습하시는 걸 추천드립니다.

+ Recent posts