모든 객체들이 메소드와 속성들을 상속 받기 위한 템플릿으로써 프로토타입 객체를 가진다는 의미
객체 지향 프로그래밍에서 상속을 구현하는 메커니즘
자바스크립트에서는 모든 객체가 다른 객체를 기반으로 만들어지는데, 이 때 객체는 프로토타입을 가짐, 그리고 이 프로토타입은 해당 객체가 상속하는 속성과 메서드를 포함하고 있음
자바스크립트는 객체에서 속성이나 메서드를 찾을 때, 해당 객체의 프로토타입 체인을 따라 올라가며 검색한다.
=> 해당 객체에 속성 또는 메서드가 없으면 자바스크립트는 해당 객체의 프로토타입으로 이동하여 찾는다.
프로토타입을 사용하면 객체 간에 상속 관계를 설정할 수 있다.
예를 들어, 객체를 생성할 때 생성자 함수와 함께 new 키워드를 사용하면, 해당 생성자 함수의 프로토타입을 상속하는 새로운 객체가 생성된다.
이렇게 생성된 객체는 생성자 함수의 프로토타입에 정의된 속성과 메서드를 상속받게 된다.