자바스크립트는 객체기반의 프로그래밍 언어이며 자바스크립트를 구성하는 거의 모~든 것이 객체라고 할 수 있다. 원시값을 제외한 함수, 배열, 정규 표현식 등 모두 객체다.
원시타입은 => 변경불가능한 단 하나의 값.
객체타입은 => 변경가능한 값, 복합적인 구조.
객체는 0개 이상의 프로퍼티로 구성된 집합이며, 프로퍼티는 key와 value로 구성된다.
모든 값이 프로퍼티가 될 수 있으며, 함수가 프로퍼티가 된 경우 메서드라고 부른다.
const counter = {
num : 0, //프로퍼티
increase : function () { //메서드
this.num++;
}
이처럼 객체슨 메서드와 프로퍼티의 조합이다.
프로퍼티는 객체의 상태를 나타내는 값이고 메서드는 프로퍼티를 참조하고 조작할 수 있는 동작이다.