πΒ ****Reference
π Chapter
β£
Symbol
- Symbol
- μ¬λ³Ό(symbol)μ ES6μμ μλ‘κ² μΆκ°λ 7λ²μ§Έ νμ
μΌλ‘ λ³κ²½ λΆκ°λ₯ν μμ νμ
μ κ°μ΄λ€.
- μ¬λ³Όμ μ£Όλ‘ μ΄λ¦μ μΆ©λ μνμ΄ μλ μ μΌν κ°μ²΄μ νλ‘νΌν° ν€(property key)λ₯Ό λ§λ€κΈ° μν΄ μ¬μ©νλ€.
- Mapμ΄λ λ€λ₯Έ ꡬ쑰μμ κ³ μ ν μλ³μκ° νμνκ±°λ λμμ λ°μνλ μ½λμμ μ°μ μμλ₯Ό μ£Όκ³ μ κ³ μ μλ³μκ° νμν λ μ°μΈλ€.
- κ³ μ μλ³μλ₯Ό stringμΌλ‘λ§ μ¬μ©νλ©΄ κ°μ stringμ΄λ©΄ κ°μ μλ³μλ‘ μΈμνλ€. νμ§λ§ Symbolμ κ·Έλ μ§ μλ€.
const symbol1 = Symbol('id');
const symbol2 = Symbol('id');
console.log(symbol1 === symbol2); //false
- λμΌν λ¬Έμμ΄λ‘ λ§λ€μ΄λ κ³ μ ν μλ³μλ₯Ό λ§λ λ€.
λμΌν λ¬Έμμ΄μμ κ°μ κ³ μ μλ³μλ₯Ό λ§λ€ λ
const gSymbol1 = Symbol.for('id');
const gSymbol2 = Symbol.for('id');
console.log(gSymbol1 === gSymbol2); // true
- λμΌν λ¬Έμμ΄μ κ°μ κ³ μ μλ³μκ° μμ±λλ€.