JS 1.8 · 1부. 기본 문법

조건문

if 와 else 로 조건에 따라 다른 코드를 실행합니다.

예상 학습 시간 14분 실행 단추가 있는 예제는 고쳐서 실행해 볼 수 있습니다 난이도 입문
개념 설명

조건에 따라 다른 코드를 실행합니다

지금까지는 적어 둔 코드가 위에서 아래로 모두 실행되었습니다. if 를 사용하면 조건이 참일 때만 실행되는 코드를 둘 수 있습니다.

모양
if (조건) {
	조건이 참일 때 실행할 코드
} else {
	그렇지 않을 때 실행할 코드
}

괄호 안에 앞 단원에서 배운 비교를 적습니다. 중괄호 안이 실행할 코드입니다.

최소 예제 · 편집 가능

점수를 학점으로

조건이 셋 이상이면 else if 를 사이에 둡니다. 위에서 부터 차례로 확인하고, 처음 참이 되는 것 하나만 실행합니다.

script.js
const score = 84;

if (score >= 90) {
	console.log("A");
} else if (score >= 80) {
	console.log("B");
} else if (score >= 70) {
	console.log("C");
} else {
	console.log("F");
}
출력
B

score 값을 바꿔 실행해 보세요. 95 는 A, 60 은 F 가 나옵니다.

상세 사용법

차례가 중요합니다

위의 조건을 거꾸로 적으면 결과가 달라집니다. 84score >= 70 도 참이므로, 그것이 먼저 있으면 C 가 나옵니다.

script.js
const score = 84;

if (score >= 70) {
	console.log("C");
} else if (score >= 80) {
	console.log("B");
}
출력
C

범위를 나눌 때는 좁은 조건부터 적습니다.

상세 사용법

else 없이 쓰기

참일 때만 할 일이 있고 아닐 때는 아무것도 하지 않는다면 else 를 적지 않아도 됩니다.

script.js
const stock = 0;

if (stock === 0) {
	console.log("품절입니다");
}

console.log("확인이 끝났습니다");
출력
품절입니다 확인이 끝났습니다

중괄호 밖의 코드는 조건과 상관없이 실행됩니다.

상세 사용법

조건 안에서 값을 그대로 확인하기

앞 단원에서 본 것처럼, 참·거짓이 아닌 값도 조건 자리에 놓을 수 있습니다. 빈 글자와 0 은 거짓입니다.

script.js
const name = "";

if (name) {
	console.log(`안녕하세요, ${name}님`);
} else {
	console.log("이름을 입력해 주세요");
}
출력
이름을 입력해 주세요
흔한 실수

처음에 자주 걸리는 것

1. 조건 자리에 = 를 적습니다

if (score = 90) 는 비교가 아니라 값을 넣는 것입니다. 넣은 값이 참으로 다뤄져 언제나 실행됩니다. === 로 적어야 합니다.

2. 넓은 조건을 먼저 적습니다

score >= 70 을 맨 위에 두면 90점도 C 가 됩니다. 좁은 조건부터 적으세요.

3. 중괄호를 빠뜨립니다

한 줄이면 중괄호를 생략할 수 있지만, 나중에 줄을 더할 때 조건 밖으로 빠져 나갑니다. 언제나 중괄호를 적으세요.

if (stock === 0)
    console.log("품절입니다");
    console.log("이 줄은 조건과 무관하게 실행됩니다");
실습 문제

직접 해보기

1. 짝수인지 홀수인지 출력하기 난이도 하

숫자를 변수에 담고, 짝수면 "짝수", 홀수면 "홀수" 를 출력하세요.

2로 나눈 나머지가 0이면 짝수입니다(1.6).
const number = 14; if (number % 2 === 0) { console.log("짝수"); } else { console.log("홀수"); }
2. 배송비 계산하기 난이도 중

주문 금액이 50000원 이상이면 배송비가 무료, 그렇지 않으면 3000원입니다. 금액과 배송비를 합친 결제 금액을 출력하세요.

배송비를 let 으로 선언해 두고 조건에 따라 값을 바꾸면 됩니다.
const price = 42000; let fee = 3000; if (price >= 50000) { fee = 0; } console.log(price + fee); // 45000
요약

이 단원의 정리

  • if 는 조건이 참일 때만 중괄호 안을 실행합니다.
  • 조건이 셋 이상이면 else if 를 사이에 둡니다.
  • 위에서부터 확인하고 처음 참이 되는 것 하나만 실행합니다.
  • 범위를 나눌 때는 좁은 조건부터 적습니다.
  • 중괄호는 한 줄이어도 적습니다.