Object.create() __proto__ ๋์ ์ 'Object.create()' ๋ฅผ ์ฌ์ฉํด์ prototype link(๋ช
ํํ ์์๊ด๊ณ)๋ฅผ ์ง์ ํด์ค ์ ์๋ค. let lee = Object.create(kim); kim์ ๋ถ๋ชจ๋ก ํ๋ ์์๊ฐ์ฒด lee๋ฅผ ๋ง๋ค์ด์ค let superObj = {superVal:'super'} //let subObj = {subVal:'sub'} //subObj.__proto__ = superObj; let subObj = Object.create(superObj);// superObj๋ฅผ ๋ถ๋ชจ๋ก ํ๋ ์๋ก์ด ๊ฐ์ฒด,๋ณด๋ค prototype link(๋ช
ํํ ์์๊ด๊ณ)๋ฅผ ํ๋ฆฝ! subObj.subVal = 'sub'; //์ฃผ์์ฒ๋ฆฌ๋ฅผ ํ ์์ ์ฝ๋์ ๋๊ฐ์ด ๋์ console.lo..
๊ฐ์ฒด์์
'__proto__' lee.__proto__ = kim; lee๋ kim์ ์์์ด๋ค // class ๋ฌธ๋ฒ์ด ์๋๋ผ ์์ฃผ ๊ด์ต์ (prototype)์ผ๋ก ์์ํ๋ ๋ฐฉ๋ฒ 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๊ฐ superVa..