본문 바로가기

TIL LIST/JavaScript

[기초 이론] if ... else

if ... else

JavaScript 는 위에서 아래로 한줄씩 순차적으로 코드의 흐름을 읽어나가는 데, 특정 조건을 걸고 조건을 충족하면 실행하거나 실행하지 않는 것을 조건문이라고 한다. 그 중 하나인 if ... else만약 ... 이라면 ... 한다. 라고 생각하면 편하다. 즉 if ... else 문은 지정한 조건이 참(true)인 경우 명령문(Statement)을 실행한다. 조건이 거짓(false)인 경우 또 다른 명령문이 실행 될 수 있다.

if(condition) {
    statement;
} else {
    last statement;
}
  1. 먼저 if 문을 작성해주는데 쉽게 구문으로 풀면 만약(라면) { 중괄호 안의 명령문을 시행한다 } 와 같다. 최종적으로 소괄호 안의 표현식이 true 일 경우 staement 가  실행되고, 그렇지 않다면 그 다음 줄로 넘어간다.
  2. 가장 마무리에 작성하는 else 는 모든 조건문이 false 인 경우 실행되는 구문이다. 그렇기 때문에 굳이 소괄호를 넣지 않는다.
let i = 1;

if (i > 0) {
    console.log("Positive Interger");
} else {
    console.log("Negative Integer");
}

i = 1; // > Positive Interger
i = -1; // > Negative Integer

위와 같은 조건문이 있을 때 i 가 0보다 같거나 크다면 양의 정수라는 문자열을 콘솔에 출력하도록 하고, 그것이 아니라면 음의 양수가 출력되도록 한다.

else if

그런데 i에 0을 할당하게 되면 어떤 값이 출력될까?

i = 0; // > Negative Interger

0은 정확히 따지면 양, 음 둘 다 속하지 않는 그냥 정수다. 하지만 해당 조건문은 0보다 큰 수 외의 값은 전부 음의 양수가 출력되도록 하고 있기 때문에 0 또한 음의 양수라고 인식된다. if ... else 조건문은 단 두단계만 있는 게 아니다. if 와 else 사이에 표현식을 넣을 수 있는 else if 문도 있다.

let i = 0;

if (i > 0) {
    console.log("Positive Interger");
} else if (i === 0) {
    console.log("Zero");
}
else {
    console.log("Negative Integer");
}

위 조건문에선 i가 0이므로 Zero가 출력된다.

 

2022년 6월 15일 추가 내용

코드 챌린지를 하다 if 구문 안에 또 if 구문을 작성할 수 있어서 예문을 작성한다.

if (selectNumResult >= guessNumResult) {
    resultContents.innerText = `You chose: ${guessNumResult}, the machine chose: ${comNumResult}.`;
    if (comNumResult == guessNumResult) {
        resultWinOrNot.innerText = `You win!`
    } else {
        resultWinOrNot.innerText = `You lost!`
    }
} else {
    resultContents.innerText = `Please specify the exact range`;
    resultWinOrNot.innerText = ``;
}

 

'TIL LIST > JavaScript' 카테고리의 다른 글

[chrome app 코딩 챌린지] 1. 로그인 화면  (0) 2022.06.18
바닐라JS 강의 완강  (0) 2022.06.15
[기초 이론] Function  (0) 2022.06.12
[기초 이론] Data Type: Object  (0) 2022.06.11
[기초 이론] Array  (0) 2022.06.10