객체지향 프로그래밍
1.
속성 : 특징이나 성질을 통해 실체를 인식함
추상화 : 속성 중 내가 원하는 것만 나타냄
여러 특징,성질을 하나로 합한 복합적 자료구조
2.
상태(프로퍼티): 정보를 알려주는 data값
동작(메서드): data를 이용하는 것
data를 사용하고 이용하여 하나의 논리로 합한 복합적 자료구조
상속
객체의 상태와 동작을 다른 객체가 사용할 수 있음 → 중복의 제거
프로토타입
→ 상속을 위해 사용
모든 객체는 [[prototype]]이라는 내부 슬롯을 가지며, 내부 슬롯의 값은 프로토타입의 참조다.
[[prototype]]에 저장되는 프로토타입은 객체 생성 방식에 의해 결정된다.
즉, 객체가 생성될때 객체 생성 방식에 따라 프로토타입이 결정되고 [[prototype]]에 저장된다.
"_ proto _"접근자 프로퍼티를 통해 프로퍼티에 접근하는 이유
상호 참조에 의해 프로토타입 체인이 생성되는 것을 방지하기 위해
프로토타입 체인은 단방향 연결로 구현
코드 내 직접사용 권장 X
obj는 프로토 타입 체인의 종점이므로 __proto__를 상속받지 못해
Object.getPrototypeof 메서드 사용