JavaScript - 문제 미리보기

문제 253

hard
다음 코드의 실행 결과는? ```javascript let x = Boolean(false); let y = new Boolean(false); console.log(typeof x); console.log(typeof y); console.log(x == y); console.log(x === y); ```
A. boolean, object, true, true
B. boolean, object, true, false
C. boolean, boolean, true, true
D. object, object, false, false

정답: B

이는 원시값과 객체의 차이를 보여주는 중요한 예제입니다: 1) `Boolean(false)`: Boolean 함수를 사용한 원시값 → `typeof`는 "boolean" 2) `new Boolean(false)`: new 키워드로 생성한 Boolean 객체 → `typeof`는 "object" 3) `x == y`: 동등 비교(`==`)는 타입 변환 후 비교하므로 `true` 4) `x === y`: 엄격한 비교(`===`)는 타입과 값이 모두 같아야 하므로 `false` (원시값 ≠ 객체)

💡 학습 팁

이 문제를 포함한 JavaScript 과목의 모든 문제를 순차적으로 풀어보세요. 진행상황이 자동으로 저장되어 언제든지 이어서 학습할 수 있습니다.