웹 입문

프로토타입과 상속

대부분의 객체 지향 언어는 클래스(Class) 기반으로 상속을 구현합니다. 반면 자바스크립트는 ES6 이전까지 클래스 개념 없이 프로토타입(Prototype) 메커니즘으로 상속을 구현해 왔습니다.

프로토타입 체인, 생성자 함수, 상속 관계를 기준으로 객체가 속성과 메서드를 찾는 과정을 정리합니다.

1

프로토타입 (Prototype): 모든 객체의 부모

자바스크립트에서 모든 객체는 자신의 부모 역할을 하는 또 다른 객체와 연결되어 있습니다. 이 부모 객체를 프로토타입(Prototype)이라고 부릅니다.

클래스(Class)
2

상속: 프로토타입 체인의 활용

자바스크립트의 상속은 이 프로토타입 체인을 통해 이루어집니다.

프로토타입(Prototype)
3

class 키워드: 문법적 설탕

ES6(ECMAScript 2015)부터 자바스크립트에 class 키워드가 도입되었습니다.

프로토타입 체인(Prototype Chain)