인프런 커뮤니티 질문&답변

이종민님의 프로필 이미지

작성한 질문수

웹 게임을 만들며 배우는 React

4-1. React 조건문

객체의 불변성에 대해서 질문드립니다.

21.11.02 11:16 작성

·

188

0

state가 객체의 경우에는 복사를 활용해서 참조관계를 끊으면 되는 건가요? 그렇다면 자바스크립트 수업때 알려주셨던 JSON.parse(JSON.stringify())를 사용하면 되는 걸까요?

답변 1

0

제로초(조현영)님의 프로필 이미지
제로초(조현영)
지식공유자

2021. 11. 02. 11:58

참조관계를 너무 다 끊어서도 비효율적입니다. JSON.parse(JSON.stringify())도 성능이 느린데다가 객체 내부의 객체마저 새로 만들면 어떤 컴포넌트의 props는 원래 변하지 않았는데도 새로운 객체가 생겨 리렌더링이 되어버립니다.

immer 라이브러리를 쓰는게 편합니다.

이종민님의 프로필 이미지
이종민
질문자

2021. 11. 02. 18:04

답변 감사합니다. 그럼 객체를 사용하는 것 보다는 최대한 배열을 사용하는 쪽으로 구현하는게 더 편한 건가요?

제로초(조현영)님의 프로필 이미지
제로초(조현영)
지식공유자

2021. 11. 02. 19:15

배열도 객체입니다. 똑같은 문제가 있습니다.