JavaScript - Symbol.for


Symbol.for - 공유심볼

public member. 전역고안에서 공유되는 심볼이다.


const a = Symbol.for()

a// Symbol(undefined). 문자열 필수임

const a= Symbol.for('abc') //새로 선언 생성
const b = Symbol.for('abc') //있는지 찾아보고 있으니 갖다 쓴거.

a === b //true. 문자열로만 인식


const obj = (()=>{
  const COMMON1 = Symbol.for('공유심볼')
  return{
    [COMMON1]: '공유 가능. 접근 가능'
  }
})();

obj[Symbol.for('공유심볼')] //가능

const commonSymbolKey1 = Symbol.keyFor(COMMON1)

commonSymbolKey1 // "공유심볼". 그냥 Symbol로 만들어진 애들한테는 접근이 안됨

const keys = ['ADD_TODO', 'DELETE_TODO'];
const Constants = {}'
keys.forEach(v=>{Constants[Symbol.for(v)] = v; })