자바스크립트는 객체 기반 언어 이다.따라서 프로퍼티 (일종의 변수) 와, 메서드 (일종의 함수) 로 이루어 진다.
C++나 자바 같은 클래스 기반 객체 지향 언어는 클래스를 사전에 정의하고 필요한 시점에 new연산자와 함께 생성자를 호출하여 인스턴스를 생성하는 방식으로 생성한다.
자바스크립트는 다른 객체 지향 언어 처럼 캡슐화,다형성,상속 을 갖추고 있지 못했지만,ECMAScript6(ES6)에서 다른 객체 지향언어 처럼 클래스를 지원함으로써 객체지향적 개념을 거의 다 수용하였다.
자바스크립트 객체는 자바 같은 언어와는 달리 브라우저에서 좀 더 다양한 접근을 하기 위한 다양한 종류의 객체를 제공함과 동시에 사용자 생성 객체도 존재한다.
코어 객체
Array,Date,String,Math 등을 말한다.
HTML DOM 접근 객체
HTML 태그들을 브라우저가 객체화 한 것이다.
브라우저 관련 객체(BOM)
브라우저의 종류,스크린의 크기 정보,새로운 윈도우 생성에 관련된 객체이다.
사용자 생성 객체
자바스크립트는 프로토 타입기반 객체 지향 언어로서 클래스 기반 객체 지향 언어와는 다르다
자바스크립트의 객체 생성 방법은 여러가지가 있다.
-객체 리터럴 방식
-new Object() 로 생성하는 방식
-생성자 함수로 생성하는 방식
-클래스 기반 객체 생성