자바스크립트의 객체는 크게 표준 빌트인 객체, 호스트 객체, 사용자 정의 객체의 세 종류로 분류가 가능하다.
자바스크립트는 Object, String, Number, Boolean, Symbol, Date, Math 등 40여 개의 표준 빌트인 객체를 제공한다.
https://developer.mozilla.org/ko/docs/Glossary/Global_object
전역 객체 - 용어 사전 | MDN
전역 객체 object 는 전역 범위 global scope (en-US) 에 항상 존재하는 객체를 의미합니다.
developer.mozilla.org
Math, Reflect, JSON을 제외한 표준 빌트인 객체는 모두 인스턴스를 생성할 수 있는 생성자 함수 객체이다. 생성자 함수인 표준 빌트인 객체가 생성한 인스턴스의 프로토타입은 표준 빌트인 객체의 prototype 프로퍼티에 바인딩된 객체다. 표준 빌트인 객체의 prototype 프로퍼티에 바인딩된 객체는 다양한 기능의 빌트인 프로토타입 메서드를 제공한다. 또한 인스턴스 없이도 호출 가능한 정적 메서드를 제공한다.
원시값은 객체가 아닌데도 불구하고, 생성자 함수를 가지고 있다. 이는 원시값에 다양한 메서드와 프로퍼티를 적용하기 위함이다. 원시값에 객체처럼 마침표 표기법을 사용하면, 자바스크립트 엔진은 연관된 객체를 생성하고 메서드를 호출하거나 프로퍼티에 접근한 후 다시 원시값으로 되돌린다. 이 과정에서 생성되는 임시 객체를 래퍼 객체라 부른다.
전역 객체는 코드가 실행되기 이전 단계에 자바스크립트 엔진에 의해 먼저 생성되는 특수한 객체이며, 최상위 객체다.
전역 객체는 자바스크립트 환경에 따라 지칭하는 이름이 제각각이다. 브라우저에서는 window가 전역 객체를 가리키지만 Node.js 환경에서는 global이 전역 객체를 가리킨다. 전역 객체는 표준 빌트인 객체와 전역 변수, 전역 함수를 프로퍼티로 갖는다. 전역 객체는 자신을 가리키는 식별자를 생략하여 참조/호출할 수 있다.
'Javascript' 카테고리의 다른 글
모던 자바스크립트 Deep Dive 읽기 - 23장 : 실행 컨텍스트 (0) | 2022.04.07 |
---|---|
모던 자바스크립트 Deep Dive 읽기 - 22장 : this (0) | 2022.04.07 |
모던 자바스크립트 Deep Dive 읽기 - 20장 : strict mode (0) | 2022.04.06 |
모던 자바스크립트 Deep Dive 읽기 - 19장 : 프로토타입 (0) | 2022.03.31 |
모던 자바스크립트 Deep Dive 읽기 - 18장 : 함수와 일급 객체 (0) | 2022.03.31 |