[javascript] json object 불변 상수 변수 선언하기 Object.freeze()

Jinbro·2022년 9월 3일
0

javascript

목록 보기
1/13

고민

  • json object 불변 상수 변수를 선언하는 방법?
  • const 키워드로 상수 변수 선언 가능
const num = 1;
num = 999; // Uncaught TypeError: Assignment to constant variable.
  • const 변수 타입이 json object인 경우, 요소의 내용 변경, 추가 가능
const editableObj = { id : 1 }; // {id: 1}
editableObj.id = 999; // {id: 999}
editableObj.name = 'pjh'; // {id: 999, name: 'pjh'}

솔루션

  • Object.freeze() 활용하여 선언한 json object 변수는 요소 변경, 추가 불가능
const nonEditableObj = Object.freeze({ id : 1 }); // {id: 1}
nonEditableObj.id = 999; // {id: 1}
nonEditableObj.name = 'pjh'; // {id: 1}

결론

  • 불변 상수 변수 선언이 필요한 경우, 단일 변수 -> const 키워드, json object 변수 -> Object.freeze() 를 활용할 수 있다.

참고

profile
자기 개발 기록 저장소

0개의 댓글