프로토타입
.prototype
.proto
클래스, 인스턴스, 프로토타입의 관계
클래스 문법과 비슷하게 prototype은 상속적이다. 어쩌면 부모/자식 관계가 아닌, 조상님으로부터 내려온 DNA같은 느낌이다. 프로토타입에 대한 MDN문서를 확인해보자.
내가 호출한 메소드를 찾기 위해 우리 컴퓨터는 기묘한 모험을 떠난다. 계속 그렇게 메소드를 찾기위해 부모의 부모의 부모의 .... 까지 이어짐을 프로토타입 체인이라고 한다.
프로토타입을 다루기 위해서 우리는 아래의 예시처럼 사용한다.
Object.prototype
부트캠프를 진행하면서 arr.length() , console.log() 처럼 내가 등록한 메서드가 아님에도 쓸 수 있는게 이런 이유이다.
예시)
const array = new Array(1,2,3)
console.log(array) // [1,2,3]
Array.prototype을 통해서 우리는 내장된(조상님의 DNA)를 확인할 수 있다.
응용 예시)
Array.prototype.함수 = function()