νλ‘ν νμ 체μΈ
- μλ°μ€ν¬λ¦½νΈλ νΉμ κ°μ²΄μ νλ‘νΌν°λ λ©μλμ μ κ·Όμ κ°μ²΄ μμ μ κ² λΏ μλλΌ __proto__κ° κ°λ¦¬ν€λ λ§ν¬λ₯Ό λ°λΌμ μμ μ λΆλͺ¨ μν μ νλ νλ‘ν νμ κ°μ²΄μ νλ‘νΌν°λ λ©μλλ₯Ό μ κ·Ό ν μ μλ€.
λ°λΌμ, νΉμ κ°μ²΄μ νλ‘νΌν°λ λ©μλ μ κ·Ό μ λ§μ½ νμ κ°μ²΄μ ν΄λΉ νλ‘νΌν°κ° μ‘΄μ¬νμ§ μλλ€λ©΄ __proto__κ° κ°λ¦¬ν€λ λ§ν¬λ₯Ό λ°λΌ λΆλͺ¨ μν μ νλ νλ‘ν νμ κ°μ²΄μ νλ‘νΌν°λ λ©μλλ₯Ό μ°¨λ‘λ‘ κ²μνλ κ²μ΄ λ°λ‘ νλ‘ν νμ 체μΈμ΄λ€.
- λͺ¨λ νλ‘ν νμ 체μ΄λμ μ’ μ μ Object.prototype μ΄λ€.
- νμ κ°μ²΄λ μμ κ°μ²΄μ νλ‘νΌν°λ λ©μλλ₯Ό μμλ°λ κ²μ΄ μλλΌ κ³΅μ νλ€.
μ€μ΅νλ©΄μ νλ‘ν νμ 체μΈμ κ³Όμ μ΄ν΄νκΈ°! ( __proto__λ₯Ό μ΄μ©)
let div = document.createElement('div');
div.__proto__ // HTMLDIVElement
div.__proto__.__proto__ // HTMLElement
div.__proto__.__proto__.__proto__ //Element
div.__proto__.__proto__.__proto__.__proto__ // Node
div.__proto__.__proto__.__proto__.__proto__.__proto__ // EventTarget
div.__proto__.__proto__.__proto__.__proto__.__proto__.__proto__ // Object
div.__proto__.__proto__.__proto__.__proto__.__proto__.__proto__.__proto__
// null
μν! Objectκ° νλ‘ν νμ
μ μ’
μ μ΄κ΅¬λ!
π
__proto__ μ prototype μ μ°¨μ΄
__proto__
- λͺ¨λ κ°μ²΄κ° κ°μ§κ³ μλ€.
- νλμ Link λΌκ³ ν μ μλ€.
prototype
- ν¨μ κ°μ²΄λ§ κ°μ§κ³ μλ€.
- μμ±μλ₯Ό κ°μ§λ μνμΌλ‘ μ μΈ ν μ μλ€.
'πLanguage > JavaScript' μΉ΄ν κ³ λ¦¬μ λ€λ₯Έ κΈ
TIL) μλ°μ€ν¬λ¦½νΈ λΉλκΈ°μ setTimeout (0) | 2022.05.28 |
---|---|
TIL) forEach, for of, for in, filter, reduce, map μ 리, μλ°μ€ν¬λ¦½νΈ (0) | 2022.05.27 |
TIL) νλ‘ν νμ μ 리 (0) | 2022.05.26 |
TIL) κ°μ²΄ μ§ν₯ νλ‘κ·Έλλ°, OOP, μΊ‘μν, μΆμν, μμ, λ€νμ± (0) | 2022.05.25 |
TIL) κ°μ²΄ μ§ν₯ νλ‘κ·Έλλ°, ν΄λμ€, μΈμ€ν΄μ€, λͺ¨λνλ₯Ό νλ μ΄μ (0) | 2022.05.25 |