티스토리 뷰

Prototype 프로토타입
  • 자바스크립트에서 프로토 타입은 두 가지의 의미를 혼용해서 사용한다.

프로토타입의 두가지 의미

  1. __proto__ : 상위에서 물려 받은 객체의 프로토타입에 대한 정보
  1. prototype : 자신의 프로토타입 객체 즉, 하위로 물려줄 프로토타입의 정보

예시

 

정의한 Animal 함수의 __ proto __ 는 Amimal 객체를 생성할 때 사용될 원형프로토타입을 가르키고 있다.

Animal 함수의 prototypeAnimal의 Prototype가르키고 있다. (두 가지 의미중 두 번째 )

 

예시 2

 

 

 

생성한 cat 객체와 dog 객체의 __proto__(prototype link)은, cat 객체와 dog 객체를 생성한 프로토타입 객체를 가르키고 있습니다.

 

프로토타입 체인(Prototype Chain)

코드 2에서 dog.bark()을 실행하면 어떤 결과가 나올까요 ?

"왈왈!" 이라는 결과를 얻게 됩니다.

dog 객체에는 bark 라는 함수가 정의 되어 있지 않지만, Animall 프로퍼티에는 bark이라는 함수가 정의 되어 있고, Animal프로퍼티에 정의된 bark의 결과 값을 얻게 됩니다.

 

💡
이와 같이 현재의 객체에서 어떠한 기능을 호출하였는데, 찾지 못하면 상위로 올라가 찾게 됩니다.

→ 이러한 반복하여 상위로 올라가면서 찾는 개념을

프로토 타입 체인( Prototype Chain ) 이라고 합니다.

'Java Script & j Query > Java Script' 카테고리의 다른 글

클로저  (0) 2021.06.07
생성자 함수  (0) 2021.06.03
[Java Script]-클로저란?  (0) 2021.03.31
[JavaScript]Form Data란?  (0) 2020.09.27
$.ajax(에이젝스) 비동기식 처리와 동기식 처리 async  (0) 2020.07.26