__proto__, Object.create()

김세주·2021년 1월 20일
0

JavaScript

목록 보기
6/12
post-thumbnail

let superObj = {superVal : 'super'}
let subObj = {subVal : 'sub'}

subObj.__proto__ = superObj;

자바스크립트에서는 이런식으로
__proto__ 를 사용해 직접 다른 객체 상속받을 수 있고, 바꿀 수도 있다. 이 순간에 객체는 다른 객체의 자식이 됨.
그러나 이는 superObj 자체를 바꾸는 것은 아니다.
// 추천하진 않는다

Object.create()

새로운 객체를 만드는데 그 새로운 객체는 ()안에 객체를 부모로 하는 객체이다.

let obj = Object.create(superObj)

obj는
superObj를 부모로 하는 새로운 객체이다

let superObj = {superVal : 'super'}

let subObj = Object.create(superObj);

subObj.subVal = 'sub'

이렇게 부모객체가 정의되어 있고 상속받게 하고 싶을때 Object.create()를 사용한다. 선언된 subObj에 여러가지 메서드를 사용 할 수 있다.

profile
시간은 내 편이다.

0개의 댓글