1. 자바스크립트 객체의 구분
ㅇ 코어 객체(core object) / 내장 객체(built-in object) / 네이티브 객체(native object)
- 자바스크립트 언어 규약으로 정의되어짐 (ECMAScript 규약)
. 자바스크립트 언어 내부에 내장되어 있는 객체들로써,
. 특별히 선언 또는 정의하지 않고, 전역 변수 처럼 언제나 바로 이용할 수 있음
- 내장 객체 (builtin object)
. Global object (전역 객체)
.. 자바스크립트 인터프리터가 자바스크립트 코드를 읽어들일 때 마다,
꽤 많은 전역 객체들을 생성함
.. 이들을 통해, 자바스크립트의 기본 기능에 접근하기 위한 수단이 제공됨
.. 또한, 특정 호스트 환경으로써, 웹브라우저가 새 페이지를 읽어들일 때 마다,
생성되는 Window 객체(document,location,history 등)도 전역 객체 임
. Object object (범용 객체)
.. 모든 객체의 기본 객체(모든 객체의 모형)으로써,
다른 객체에 객체의 공통적인 성질/기능을 제공
. Function object (함수 객체)
. Array object (배열 객체)
. String object (문자열 객체)
. Boolean object (불리언 객체)
. Number object (숫자 객체)
. Math object (수학 객체)
. Date object (날짜 객체)
. RegExp object (정규표현식 객체)
. JSON object (JSON 객체)
. 에러처리용 object 등
.. (Error,EvalError,InternalError,RangeError,ReferenceError,SyntaxError,
TypeError,URIError)
. Promise object
. Proxy object
. Map object : 연상 배열을 관리하기 위한 객체
. Set object : 비 중복 값들의 집합을 관리하기위한 객체
. Symbol object
ㅇ 호스트 객체 (host object)
- 실행 환경(호스트 환경) 마다 다르게 존재하는 객체
. 즉, 운영체제,웹브라우저 마다 그에따라 달라짐
- 주로, 웹브라우저 확장 등에 쓰임
. 즉, 클라이언트 측 웹브라우저 기동시, 자동으로 생성되는 전역 객체로써,
.. 동적으로 접근가능토록 구조화된 객체
- 웹브라우저 확장 例) BOM, DOM, 이벤트, Ajax, HTML5 API 관련 객체들
. Window 객체 ☞ Window 객체, Window 객체의 메소드 참조
. Window 객체의 하위 객체들 例) location,history,document,navigator,screen 등
2. 용도별 객체 구분
ㅇ 기본 데이터형 처리를 위한 객체들 : (래퍼 객체)
- String 객체, Number 객체, Boolean 객체, Symbol 객체 등
ㅇ 값의 집합을 처리하기 위한 객체들 (특정 데이터 구조를 다루기 위함)
- Array 객체 (배열 처리 전용), Map 객체 (연상 배열 관리), Set 객체 (비 중복 값들의 관리)
ㅇ 수학 연산 기능을 제공하는 객체 : Math 객체