[JS & ES6 신문법 학습] ES5방식으로 쉽게 구현하는 상속기능

김범기·2024년 7월 11일

JAVASCRIPT

목록 보기
20/38

prototype, function 기게(){}

이것들은 사실 고대유물이다.

쉽게 구현하는 상속기능을 아라보자.

ES5방법 : Object.create()

부모가 가진 name, age를 그대로 물려받은 자식 object를 만들고 싶으면?
1. constructor 함수를 만들거나
2. Object.create를 이용하거나

var 부모 = { name : 'kim', age: 50}

var 자식 = Object.create(부모)

prototype을 정의해주세요. (prototype을 부모로 해주세요. 라고 했을 뿐 name과 age를 정의하지 않았음)

그런데 자식.name을 입력하면 이렇게 나온다.

자식이 name은 없지만, 부모에게 name이 있는지 확인 있네? 가져옴.

바꾸고 싶으면??

var 부모 = { name : 'kim', age: 50}

var 자식 = Object.create(부모)

자식.age = 20

자식의 자식도 만들 수 있음.

var 부모 = { name : 'kim', age: 50}

var 자식 = Object.create(부모)

자식.age = 20

var 손자 = Object.create(자식)


'자식'의 자식이므로 자식이 가진 내용을 그대로 상속한다.\

'부모'의 부모는 new Object를 만드는 Object임.

profile
반드시 결승점을 통과하는 개발자

0개의 댓글