[JS] 프로토타입

daybyday·2020년 12월 26일
0

Javascript

목록 보기
5/15
post-thumbnail

프토로타입

자바스크립트의 모든 객체는 자신의 부모 역할을 하는 객체와 연결되어 있다. 객체는 부모 객체의 프로퍼티를 마치 자신의 것처럼 쓸 수 있는 특징이 있다. 이러한 부모 객체를 프로토타입이라고 부른다.

var fruits = {
	name:'apple',
  	color:'red'
}

console.log(fruits.toString());
console.dir(fruits);

fruits 객체에는 toString() 메서드가 없어 console.log(fruits.toString())의 결과는 에러가 발생해야하지만, fruits 객체의 프로토타입에 toString() 메서드가 정의되어 있기 때문에 에러가 나지 않는 것이다.

fruits 객체에는 name, color뿐 아니라 __proto__라는 프로퍼티도 있는 걸 확인 할 수 있다. __proto__ 프로퍼티가 가리키는 객체는 Object.prototype이며, 모든 객체에서 호출 가능한 기본 내장 메서드가 포함되어 있다. 그래서 fruits 객체가 Object.prototype 프로토타입에 있는 메서드를 상속받아 사용할 수 있는 것이다.

💡 자바스크립트의 모든 객체는 자신의 부모 역할을 하는 프로토타입 객체와 연결되어 있고, 그 객체에 포함된 다양한 메서드를 상속받아 사용할 수 있다.

0개의 댓글