JS
[JS] 자바스크립트 형 변환과 불리언(Boolean)
coco030030
2025. 4. 2. 11:07
자바스크립트 형 변환과 불리언(Boolean) 쉽게 이해하기
앞에 이미 있지만.
Boolean이란 무엇인가요?
Boolean은 참(true) 또는 거짓(false) 단 두 가지 값만 가질 수 있는 데이터 타입입니다.
실생활 예시:
- 전등 스위치: 켜짐(true) 또는 꺼짐(false)
- 예/아니오 질문: 예(true) 또는 아니오(false)
- 로그인 상태: 로그인됨(true) 또는 로그아웃됨(false)
예제 코드 분석
document.write(123+234+"<br>"); // ① 숫자+숫자+문자열
계산: 123 + 234 = 357, 그리고 357 + "
" = "357
"
출력: 357
document.write(123+"234"+"<br>"); // ② 숫자+문자열+문자열
계산: 123 + "234" = "123234" (숫자가 문자열로 변환됨)
출력: 123234
document.write(false+123+"<br>"); // ③ 불리언+숫자+문자열
계산: false는 숫자 계산에서 0으로 취급, 0 + 123 = 123
출력: 123
document.write(123+String(234)+"<br>"); // ④ 숫자+문자열변환+문자열
계산: 123 + "234" = "123234" (String()으로 명시적 변환)
출력: 123234
document.write(123+Number("234")+"<br>"); // ⑤ 숫자+숫자변환+문자열
계산: 123 + 234 = 357 (Number()로 문자열을 숫자로 변환)
출력: 357
document.write(Boolean(1)+"<br>"); // ⑥ 불리언변환+문자열
계산: Boolean(1) = true (0이 아닌 모든 숫자는 true)
출력: true
document.write(Boolean(0)); // ⑦ 불리언변환
계산: Boolean(0) = false (0은 false로 변환)
출력: false
Boolean으로 변환되는 값들
true로 변환되는 값들:
- 모든 숫자 (0과 NaN 제외)
- 모든 문자열 (빈 문자열 "" 제외)
- 모든 객체와 배열 (비어있어도)
false로 변환되는 값들:
- 숫자 0, -0
- 빈 문자열 ""
- null
- undefined
- NaN (Not a Number)
- false 자체
Boolean을 실생활에 비유하면
Boolean(값)은 "이 값이 의미 있는가?"라는 질문에 대한 답이라고 생각하세요:
- Boolean(1): "1이 의미 있는 값인가?" → 네(true)
- Boolean(0): "0이 의미 있는 값인가?" → 아니오(false)
- Boolean("안녕"): "안녕이라는 단어가 의미 있는가?" → 네(true)
- Boolean(""): "빈 문자열이 의미 있는가?" → 아니오(false)
형 변환 규칙 요약
- 숫자 + 숫자 = 숫자 (일반적인 덧셈)
- 문자열 + 무엇이든 = 문자열 (문자열 연결)
- 불리언 + 숫자 = 숫자 (true=1, false=0으로 계산)
- Boolean(값) = 그 값이 의미 있으면 true, 아니면 false