본문 바로가기

프로토타입 체인2

프로토타입 체인을 이용한 Javascript의 상속 이전 글에서 javascript의 class와 프로토타입 체인에 대해 간단히 정리해봤습니다. 이번 글에서는 javascript가 프로토타입 체인을 이용해 어떻게 상속을 구현하는지에 대해 정리해보겠습니다. TL;DR javascript에서는 프로토타입 체인을 이용해 상속이 구현됨. extends 키워드를 통해 클래스의 상속 관계를 만들 수 있음. 상속 관계가 되면 자식 클래스의 프로토타입은 부모 클래스의 프로토타입을 가지게 됨으로써 프로토타입 체인이 만들어짐. 인스턴스에서 프로퍼티에 접근하려고 할 때 프로토타입 체인을 따라 상위 프로토타입으로 거슬러 올라가면서 프로퍼티를 찾음. 따라서 부모 클래스와 자식 클래스에 같은 이름의 프로퍼티가 있을 때 자식 클래스에 있는 프로퍼티에 접근하게 됨.(가려짐 효과) 메.. 2021. 2. 21.
Javascript의 class javascript에서 class가 어떻게 동작하는지에 대해 정리해보겠습니다. TL;DR javascript에서는 class 역시 함수. class 키워드는 클래스를 직관적으로 표현하기 위한 새로운 문법일 뿐 ES6 이전과 동작 방식은 같음. 인스턴스는 클래스의 prototype을 물려받음. 클래스의 메서드는 클래스의 prototype에 저장됨. 인스턴스에서는 프로토타입 체인을 통해 클래스의 메서드에 접근할 수 있음. 정적 메서드는 클래스의 prototype이 아닌 클래스 자체에 저장됨. 그렇기 때문에 정적 메서드는 인스턴스에서 접근할 수 없고 클래스만 접근할 수 있음. class는 함수다 ES6에서 class 키워드가 등장하기 전까지 javascript에서는 생성자로 사용할 함수를 정의하고 new 키워.. 2021. 2. 8.