자바스크립트 프로토타입 공부하기 싫은 사람 모여라

프로토타입을 왜 알아야 하는지 알아봐요

·

1 min read

지긋지긋한 객체 지향... 자바스크립트 개발자들은 프로토타입에 대해 왠지 모를 거리감을 갖게 됩니다. 저 또한 그 중 한 명으로서, 스스로를 설득하기 위해 프로토타입을 왜 알아야 하는지 간단하게 정리해봤습니다.

자바스크립트의 내부 동작을 이해하는 데 도움이 됩니다

JS는 원시값을 제외한 거의 모든 것이 객체입니다. 객체 기반 언어라고 정의해도 이견이 별로 없을 정도입니다. 이러한 객체들은 프로토타입을 통해 메서드와 속성을 상속 받습니다. 표준 빌트인(String, Regex 등등) 및 호스트 빌트인(fetch 등등) 객체들부터 각종 프레임워크(React, Vue 등등)와 패키지(dayjs, jest 등등)들도 객체로 제공됩니다. 결국, 내부 구성을 이해하기 위해서는 프로토타입에 대한 이해가 선행되면 좋습니다.

JS가 동적 언어일 수 있는 이유입니다

JS는 객체의 속성이나 메서드를 런타임에 동적으로 추가하거나 변경할 수 있습니다. 이러한 동적 특성을 이해하려면 프로토타입에 대한 이해가 필요합니다.

성능에 민감한 어플리케이션 개발을 할 때 이해하면 좋아요

객체에서 속성이나 메서드를 찾을 때, 자바스크립트는 해당 객체의 프로토타입, 그리고 그 프로토타입의 프로토타입을 차례로 검색하는 프로토타입 체인을 사용합니다. 프로토타입 체인을 통한 속성 검색은 성능에 영향을 줄 수 있으므로, 이를 이해하고 코드를 작성하면 성능에 도움이 될 수 있습니다.

마치며

프로토타입에 대해 깊이 이해하고 있으면 더 나은 설계 결정을 내리고, 자바스크립트의 기능을 최대한 활용하는 데 도움이 될 거에요.
제 글이 프로토타입 공부에 대한 거리감을 조금이나마 줄었길 바랍니다.

이제 프로토타입 공부를 시작하면 어떨까요?