Javascript

객체상속의 사용

becky(지은) 2023. 3. 12. 21:36

자바스크립트의 굉장히 유연한 특징!
마음대로 누군가의 자식이 될 수 있다~~

단, 자식은 부모를 못바꾼다

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

// 자바스크립트의 굉장히 유연한 특징!
// 마음대로 누군가의 자식이 될 수 있다
subObj.__proto__ = superObj; // '__proto__'라는 링크를 걸어줌: subObj는 선조는 superObj이다

console.log('subObj.subVal =>',subObj.subVal);
console.log('subObj.superVal =>',subObj.superVal);// 객체 subObj가 superVal이라는 속성을 가지는 지 찾아봄. 없다, 그러면 '__proto__'으로 연결된 superObj 속에서 찾는다
//subObj.subVal => sub
//subObj.superVal => super

subObj.subVal = 'sub';
//superObj 값이 바뀔까?
console.log('superObj.superVal =>',superObj.superVal);
//superObj.superVal => super
//superObj의 값이 여전히 super!, 자식은 부모를 못바꾼다