: 객체 자체가 하나의 개체이며, 내부에 포함된 요소는 그 개체의 특성이나 동작을 나타내기 위해서 존재한다. 즉, 개개의 요소가 아닌 개체 그 자체이다.
: 객체 = 프로퍼티(객체의 상태나 특성을 나타내기 위한 정보) + 메소드(객체를 조작하기 위한 도구)
: 객체지향 - 객체를 중심으로 코드를 조립해 나가는 수법
◼ new 연산자
특정 객체에 대해 여러 곳에서 서로 다른 목적을 지닌 데이터값을 설정해 버린다면? : 서로 충돌 하여 올바른 동작을 하지 못한다.
인스턴화 : 객체의 복제를 만드는 것
인스턴스 : 인스턴스화에 의해 만들어진 복제본
var 변수명 = new 객체명([인수,..]) // 객체를 인스턴스화하는데는 new 연산자 이용
변수명.프로퍼티명 [= 설정값]; // 인스턴스 변수에서 프로퍼티 호출
변수명.메소드명([인수 [,...]]); // 인스턴스 변수에서 메소드 호출
① 생성자(constructor) - 객체에는 객체를 초기화하기 위해 객체와 동일한 이름의 메소드가 있으며 이 초기화 메소드를 생성자라 부른다. 객체명 = 생성자
② 인스턴스 변수, 객체 변수 : 생성된 인스턴스가 보관된 변수
: JavaScript에는 많은 객체가 공개되어 있는데 그중에서도 가장 기본적인 것이 내장형(미리 내장되어 있는) 객체이다.
: JavaScript가 동작하는 모든 환경에서 이용할 수 있다.
: 특별한 선언이나 정의를 하지 않고 바로 이용할 수 있다.
객체 | 개요 |
---|---|
(Global) | JavaScript의 기본 기능에 접근하기 위한 수단을 제공 |
Object | 모든 객체의 모형이 되는 기능을 제공 |
Array | 배열을 조작하기 위한 수단을 제공 |
MAP / WeakMAP ( ES6 ) | 키 / 값으로 이루어진 연상 배열을 조작하기 위한 수단을 제공 |
Set / WeakSet ( ES6 ) | 고유한 값의 집합을 관리하기 위한 수단을 제공 |
String | 문자열을 조작하기 위한 수단을 제공 |
Boolean | 참 / 거짓 값을 조작하기 위한 수단을 제공 |
Number | 숫자를 조작하기 위한 수단을 제공 |
Function | 함수를 조작하기 위한 수단을 제공 |
Symbol ( ES6 ) | 심벌을 조작하기 위한 수단을 제공 |
Math | 수치 연산을 실행하기 위한 수단을 제공 |
Date | 날짜를 조작하기 위한 수단을 제공 |
RegExp | 정규 표현에 관한 기능을 제공 |
Error / XxxxxError | 에러 정보를 관리 |
Proxy ( ES6 ) | 객체의 동작을 커스터마이즈하는 수단을 제공 |
Promise ( ES6 ) | 비동기 처리를 구현하기 위한 수단을 제공 |
var str = '안녕하세요!';
console.log(str.length); // 문자열 길이 (6)
➡ 대부분의 내장형 객체는 리터럴한 형태이다.