처리중입니다. 잠시만 기다려주세요.
TTJ 코딩클래스
정규반 단과 자료실 테크 뉴스 코딩 퀴즈
퀴즈 / JavaScript / 문제

JavaScript에서 typeof null의 결과가 'object'인 이유로 올바른 것은?

쉬움 MDN Web Docs
보기 및 정답
A JavaScript 초기 구현의 버그가 하위 호환성 때문에 수정되지 않고 남아 있다
B null은 실제로 빈 객체를 가리키는 참조이며 typeof가 정확한 결과를 반환한다
C null은 내부적으로 Object의 인스턴스로 구현되어 있어 프로토타입 체인에 포함된다
D ES6 사양에서 의도적으로 typeof null의 결과를 'object'로 변경하였다

해설

JavaScript 최초 구현에서 값은 타입 태그와 데이터로 저장되었는데, 객체의 타입 태그가 0이었고 null은 널 포인터(대부분 0x00)로 표현되어 타입 태그도 0으로 읽혔습니다. 이 버그는 수많은 기존 코드가 이에 의존하므로 영원히 수정되지 않을 '유명한 버그'입니다.

코딩, 제대로 배우고 싶다면?

개념 확인은 퀴즈로, 실력은 실전 프로젝트로.
투더제이 코딩클래스에서 시작하세요.

정규반 살펴보기