자바스크립트 if 조건문

박은정·2021년 7월 16일
0
post-thumbnail

조건문

조건에 따라 코드를 실행여부를 결정할 수 있다
조건 분기 : 코드가 실행되는 흐름을 변경하는 것
이때의 조건은 불 자료형 : 비교연산자와 논리연산자를 활용해서 만든다

if 조건문

불 표현식의 값이 true → 중괄호 안의 문장 실행
false → 중괄호 안의 문장 무시

if 조건문 예제1

if (273 < 100) {
  alert('273 < 100 => true')
}

alert('프로그램 종료')

if 조건문 예제2 : 오전/오후 구분하기

// 현재 날짜와 시간을 갖는 객체 생성
const date = new Date()

// 현재 시간을 0~23 사이의 값으로 출력하는 메소드
const hour = date.getHours()

// if 조건문
if (hour < 12) {
  // 표현식 hour < 12가 참일 때 실행한다
  alert('오전입니다');
}

if (hour >= 12) {
  // 표현식 hour >= 12가 참일 때 실행한다
  alert('오후입니다');
}

if else 조건문

else 구문 : 서로 반대되는 상황을 표현하는 구문
if 조건문과 마찬가지로
실행되는 문장이 하나일 때 → 중괄호 생략가능
여러 문장을 실행할 때 → 중괄호로 감싸야 한다

기본형태

if(불 값이 나오는 표현식) {
   불 값이 참일 때 실행할 문장
} else {
  불 값이 거짓일 때 실행할 문장
}

 if else 조건문 예제 : 오전/오후 구분하기

이렇게 정반대되는 조건을 검사할 때 if else 조건문을 사용하면 if 조건문을 2번 사용하지 않아도 된다
if 조건문의 조건 하나를 처리하는 횟수가 줄어 → 실제 성능 향상에 조금 도움된다

// 변수 선언
const date = new.Date()
const hour = date.getHours()

// if 조건문
if (hour < 12) [
  // 표현식 hour < 12 가 참일 때 실행
  alert('오전입니다');
  } else {
    // 표현식 hour < 12 가 거짓일 때 실행
    alert('오후입니다');
  }

중첩 조건문

조건문 안에 조건문을 중첩해 사용하는 것
여러 번 중첩가능하다

기본형태

if (불 값이 나오는 표현식1) {
  // 표현식 1이 참이면 실행
  if (불 값이 나오는 표현식2) {
    표현식 2가 참일 때 실행할 문장
  } else {
    표현식 2가 거짓일 때 실행할 문장
  } else {
    // 표현식 1이 거짓이면 실행
    if (불 값이 나오는 표현식3) {
      표현식 3이 참일 때 실행할 문장
    } else {
      표현식 3이 거짓일 때 실행할 문장
    }
  }

중첩 조건문 사용예제 : 아침, 점심, 저녁 시간대로 나눠서 출력

// 변수 선언 : const 키워드를 사용했는데 변수라 하는 이유는 뭘까
const date = new Date()
const hour = date.getHours()

// 중첩 조건문
if (hour < 11) {
  // 표현식 hour < 11이 참일 때 실행
  alert('아침 먹을 시간입니다');
} else {
  // 표현식 hour < 11이 거짓일 때 실행
  if (hour < 15) {
    // 표현식 hour < 15 이 참일 때 실행
    alert('점심 먹을 시간입니다');
  } else {
    // 표현식 hour < 15 이 거짓일 때 실행
    alert('저녁 먹을 시간입니다');
    }
}

if else if 조건문

if 조건문의 조건이 한 문장이라면 중괄호를 생략해도 된다고 했는데
이 개념을 응용해서 중첨 조건문에서 중괄호를 생햑한 형태이다

if (불 표현식) {
  문장
} else if (불 표현식) {
  문장
} else if (불 표현식) {
  문장
} else {
  문장
}

기존의 중첩 조건문으로 만든 예제 → if else if 조건문의 형태로 변환하는 방법
한 쌍의 중괄호를 지우면 된다

else {
  if (hour < 15) {
    alert('점심 먹을 시간입니다');
  }
}

// 한 쌍의 중괄호 삭제
else if (hour < 15) {
  alert('점심 먹을 시간입니다');
}

if else if 조건문 사용예제 : 아침, 점심, 저녁 시간대로 나눠서 출력

const date = new.Date()
const hour = date.getHours()

if (hour < 11) {
  alert('아침 먹을 시간입니다')
} else if (hour < 15) {
  alert('점심 먹을 시간입니다')
} else {
  alert('저녁 먹을 시간입니다')
}
profile
새로운 것을 도전하고 노력한다

0개의 댓글