본문 바로가기
프로그래밍/CS

객체지향 프로그래밍 (프로토타입 체인)

by 숙님 2022. 5. 26.
728x90

프로토타입 체인

- 객체 지향 프로그래밍 특성 중 상속을 구현할 경우 프로토타입 체인을 사용 

let leecoding = new Human('이코딩', 30);
//속성
leecoding.age;
leecoding.gender;
//메서드
leecoding.eat();
leecoding.sleep();

let packhacker = new Student('박해커', 22);
//속성
packhacker.grade; 
//매서드
packhacker.learn();

- 기본 메서드인 human은 상속 받음

- 학생은 추가적인 특징이 필요함 

- 부모 클래스는 human, 속성과 메서드를 물려받는 자식클래스는 Student

- '__proto__'으로 부모 클래스의 프로토타입, '부모의 부모 클래스'의 프로토타입을 탐색 가능 

https://velog.io/@kwd8905/Prototype-Prototype-Chain

DOM과 프로토타입

- HTMLDivElement->HTMLElement->Element->Node->EventTarget 

let div = document.createElement('div');

div.__proto__ 
div.__proto__.__proto__
div.__proto__.__proto__.__proto__
div.__proto__.__proto__.__proto__.__proto__
div.__proto__.__proto__.__proto__.__proto__.__proto__
div.__proto__.__proto__.__proto__.__proto__.__proto__.__proto__
div.__proto__.__proto__.__proto__.__proto__.__proto__.__proto__.__proto__

'프로그래밍 > CS' 카테고리의 다른 글

Postman with Open API  (0) 2022.06.13
[HTTP/네트워크]  (0) 2022.06.09
객체 지향 프로그래밍  (0) 2022.05.25
프론트엔드 인터뷰 문제 답해보기  (0) 2022.05.23
Unit8 - [Linux/Git] 기초(코드스테이츠 프론트엔드)  (0) 2022.05.09

댓글