JavaScript Booleans
JavaScript Booleans: 불리언의 이해와 활용
JavaScript에서 **불리언(Boolean)**은 논리적 참(True)과 거짓(False)을 나타내는 데이터 타입입니다. 불리언 값은 주로 조건문, 비교 연산, 논리 연산 등의 논리적 판단이 필요한 상황에서 사용됩니다. 이 가이드는 JavaScript에서 불리언의 기본 개념, 다양한 활용 방법, 그리고 관련 메서드들을 다룹니다.
1. Boolean의 기본 개념
JavaScript에서 불리언 값은 두 가지 상태만 가질 수 있습니다:
true
: 참false
: 거짓
불리언 값은 일반적으로 비교 연산 또는 조건문을 통해 생성됩니다.
const isTrue = true;
const isFalse = false;
console.log(isTrue); // 출력: true
console.log(isFalse); // 출력: false
2. Boolean의 생성
불리언 값은 두 가지 방법으로 생성할 수 있습니다.
2.1. 리터럴 방식
불리언 값을 직접 true
또는 false
로 설정하는 방식입니다.
const isOnline = true;
const hasAccess = false;
2.2. Boolean()
함수
Boolean()
함수는 값을 불리언 값으로 변환합니다. 대부분의 값은 참(true
)으로 평가되지만, JavaScript에서는 특정
값이 거짓(false
)으로 평가되는 경우도 있습니다.
const isLoggedIn = Boolean(1); // 숫자 1은 true로 변환
console.log(isLoggedIn); // 출력: true
const isAvailable = Boolean(0); // 숫자 0은 false로 변환
console.log(isAvailable); // 출력: false
3. Boolean으로 평가되는 값
JavaScript에서 값은 불리언 컨텍스트에서 참 또는 거짓으로 평가될 수 있습니다. 아래는 각 경우에 대한 설명입니다.
3.1. 참(Truthy)으로 평가되는 값
다음 값들은 불리언 컨텍스트에서 true로 평가됩니다:
- 숫자: 0이 아닌 모든 숫자 (
1
,1
,42
등) - 문자열: 빈 문자열이 아닌 모든 문자열 (
"hello"
,"false"
,"0"
등) - 배열: 빈 배열 포함 (
[]
) - 객체: 빈 객체 포함 (
{}
) Infinity
,Infinity
console.log(Boolean(42)); // 출력: true
console.log(Boolean("hello")); // 출력: true
console.log(Boolean([])); // 출력: true
3.2. 거짓(Falsy)으로 평가되는 값
다음 값들은 불리언 컨텍스트에서 false로 평가됩니다:
false
0
(숫자 0)0
""
(빈 문자열)null
undefined
NaN
console.log(Boolean(0)); // 출력: false
console.log(Boolean("")); // 출력: false
console.log(Boolean(null)); // 출력: false
console.log(Boolean(undefined)); // 출력: false
console.log(Boolean(NaN)); // 출력: false
4. Boolean 연산자
JavaScript에서 불리언 값은 다양한 논리 연산자와 함께 사용됩니다. 논리 연산자는 불리언 값을 평가하고, 조건문에서 논리적 결정을 내리는 데 사용됩니다.
4.1. &&
(논리 AND)
&&
연산자는 양쪽 모두 true일 때만 true를 반환합니다.
console.log(true && true); // 출력: true
console.log(true && false); // 출력: false
console.log(false && false); // 출력: false
4.2. ||
(논리 OR)
||
연산자는 하나라도 true면 true를 반환합니다.
console.log(true || false); // 출력: true
console.log(false || false); // 출력: false
4.3. !
(논리 NOT)
!
연산자는 불리언 값을 반전시킵니다. true는 false로, false는 true로 변경됩니다.
console.log(!true); // 출력: false
console.log(!false); // 출력: true
5. Boolean 값의 활용
5.1. 조건문
불리언 값은 주로 조건문에서 사용됩니다. 조건이 참일 경우 코드 블록이 실행됩니다.
const isAdmin = true;
if (isAdmin) {
console.log("관리자입니다.");
} else {
console.log("일반 사용자입니다.");
}
// 출력: 관리자입니다.
5.2. 삼항 연산자
삼항 연산자는 조건을 평가하여 참일 때와 거짓일 때 다른 값을 반환합니다.
const age = 20;
const canVote = age >= 18 ? "투표 가능합니다." : "투표 불가합니다.";
console.log(canVote); // 출력: "투표 가능합니다."
5.3. 기본값 설정
||
연산자를 사용해 기본값을 설정할 수 있습니다. 왼쪽 값이 false
로 평가되면 오른쪽 값을 반환합니다.
const userInput = null;
const userName = userInput || "Guest";
console.log(userName); // 출력: "Guest"
6. Boolean 객체
JavaScript에서는 원시 불리언 값 외에도 Boolean
객체를 만들 수 있습니다. 그러나 객체로 생성된 불리언 값은
원시 불리언 값과 다르게 항상 참으로 평가됩니다.
const bool1 = new Boolean(false);
console.log(bool1); // 출력: [Boolean: false]
console.log(Boolean(bool1)); // 출력: true (객체는 참으로 평가됨)
주의: Boolean 객체를 사용하는 것은 권장되지 않습니다. 일반적으로 원시 불리언 값(true, false)을 사용하는 것이 좋습니다.
요약
- *불리언(Boolean)**은 논리적 참(
true
)과 거짓(false
)을 나타내는 데이터 타입입니다. Boolean()
함수는 값을 불리언으로 변환하며, 참으로 평가되는 값과 거짓으로 평가되는 값이 존재합니다.- 논리 연산자:
&&
,||
,!
연산자를 통해 불리언 값을 평가하고 조건을 처리할 수 있습니다. - 조건문과 삼항 연산자에서 불리언 값은 중요한 역할을 합니다.
JavaScript에서 불리언 값을 활용하면, 조건에 따라 다양한 동작을 제어할 수 있습니다. 이를 통해 논리적인 판단을 기반으로 코드를 실행하는 유연한 프로그램을 작성할 수 있습니다.