조건을 배우기 위해서는 Boolean 타입에 대한 이해가 필요하다. 또한 조건문은 어떠한 조건을 판별하는 기준을 만드는 것이다. 조건문에는 반드시 비교 연산자가 필요하다. 비교의 결과는 늘 Boolean 즉, true / false 이다.
📢 다양한 비교연산자에는 어떤게 있나?
- '>'👉 초과
- < 👉 미만
- '>'= 👉 이상
- <= 👉 이하
- === 👉 같다
- !== 👉 다르다
❗ 주의
- == 👉 같다 라는 뜻이지만 타입을 엄격하게 비교하지 않는다
- != 👉 다르다 라는 뜻이지만 타입을 엄격하게 비교하지 않는다
조건문은 아래와 같이 쓸 수 있다.
if (조건1) {
// 조건1이 통과할 경우
} else if (조건2) {
// 조건1이 통과하지 않고 조건2가 통과할 경우
} else {
// 모든 조건이 통과하지 않을 경우
}
조건에는 Boolean으로 결과가 나오는 비교구문이 들어간다. 두가지 조건을 한번에 적용하는 경우가 생길 수 있는데 (물론 if문을 중첩해서 쓸수도 있지만) 그 때는 논리연산자를 사용하도록 한다.
📢 논리연산자?
- ex) 학생이면서 여성일 때 통과 ( AND 연산자)
isStudent && isFemale- ex) 학생이거나 여성일 때 통과 ( OR 연산자)
isStudent || isFemale- ex) 학생이 아니면서 여성일 때 통과 ( NOT 연산자)
!isStudent && isFemale
📢 논리연산자 NOT 의 예시
- ex) !false 👉 true
- ex) !(3>2) 👉 false
📢 논리연산자 OR 의 예시
- ex) true || true 👉 true
- ex) true || false 👉 true ( 둘중에 하나만 true여도 true)
- ex) false || false 👉 false
📢 논리연산자 AND 의 예시
- ex) true && true 👉 true
- ex) true && false 👉 false ( 둘중에 하나라도 false면 false)
- ex) false && false 👉 false
❗ 주의
- !undefined // true
- !'Hello' // 문자열은 참 true 값으로 받으나 그것의 부정이니 false
거짓 같은 값(Falsy, falsey로 쓰이기도 함) 불리언 문맥에서 false로 평가되는 값이다. 이처럼 참 값으로 평가되는 걸 truthy 라고 한다.
- false 👉 키워드 false
- 0 👉 숫자 zero
- -0 👉 음수 zero
- 0n 👉 불리언으로 사용될 경우, 숫자와 같은 규칙을 따름. 0n은 거짓 같은 값.
- "" 👉 빈 string
- null 👉 아무런 값도 없음 을 뜻함
- undefined 👉 정의되지 않은 값
- NaN 👉 숫자가 아님
위와 같은 건 if 문에서 false값으로 변환되므로, if구문이 실행되지 않는다.