본문 바로가기

JavaScript

JavaScript 기초3 조건문(conditional)

 

 

  • 학습내용

 조건문을 이해하기 위해서는 불리언(Boolean) 타입을 이해할 필요가 있다. 불리언이란 참(true)과 거짓(false)으로만 구성된 타입이다. 조건문에서 불리언을 이해할 필요가 있는 이유는 조건문은 어떠한 조건을 판별하는 기준을 만드는 것이기 때문이다. 즉, 어떤 조건을 통해 그 상황이 참(true)인지 거짓(false)인지를 판별하는 것이 조건문이다. 그렇기 때문에 조건문은 반드시 비교 연산자가 필요하다.

 비교연산자에는 

  • > (초과)
  • < (미만)
  • >= (이상)
  • <= (이하)
  • === (같다)
  • !== (다르다)

가 있다. 같다와 다르다의 경우 '=='와 '!='연산자도 있지만 이 연산자들의 경우 타입을 구분하지 않는 등의 이유로 '같다'나 '다르다'를 표현할 때에는 더 엄격한 '==='이나 '!=='를 주로 사용한다.

 

 조건문을 작성하는 형식은 이러하다.

if (조건1) {
} else if (조건2) {
} else {
}

 

당연히 조건에는 불리언으로 결과가 산출되는 표현식이 들어간다. 실행의 방식은 조건1이 통과하면 조건1의 결과를 반환하고 조건1이 통과하지 못하면 조건2의 결과를 반환하고 조건1과 조건2가 모두 통과하지 못하면 else를 반환한다.

 그런데 만약 한 조건식에 2가지 이상의 조건을 중첩해서 사용하고자 할때는 if를 중첩시키는 방법이 있고, 논리 연산자를 사용하는 방법이 있다. 논리 연산자란 두 개의 논리 값을 연산하여 참 또는 거짓을 결과로 얻는 연산자이다. 쉽게 말해 두 논리의 참과 거짓을 묶어 비교하여 새로운 참과 거짓을 결과로 내는 것이다. 

 논리연산자에는

  • && (and) - 둘 중 하나라도 거짓이면 거짓
  • || (or) - 둘 중 하나라도 참이면 참
  • ! (not) - 논리를 반전시킴

이 있다. 논리연산자를 이용한 조건문 형식은 이렇게 구성한다.

if (조건 && 조건) {
}

 

 불리언타입은 어떤 값이든 참(true)과 거짓(false)을 표현하는데, 그 결과에 따라 true를 나타내는 것을 truthy한 값 그리고 false를 나타내는 것 falsy한 값이라고 한다. 대표적으로 6가지의 falsy한 값을 제외하고는 다 truthy한 값이다.

6가지 falsy한 값은

  • false
  • undefined
  • null
  • (Number) 0
  • NaN
  • ' ' (공백)

이 있다.