강의

멘토링

로드맵

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

문종현님의 프로필 이미지
문종현

작성한 질문수

[리뉴얼] React로 NodeBird SNS 만들기

게시글, 댓글 saga 작성하기

불변성 유지하면서 변수 만들 때 질문이 있습니다.

작성

·

305

0

불변성 유지하기 위해서 변수 만들떄

const postIndex = state.mainPosts.findIndex((v) => v.id === action.data.postId);
      const post = {...state.mainPosts[postIndex]}
      post.Comments = [dummyComments(action.data.content), ...post.Comments]
      const mainPosts = [...state.mainPosts]
      mainPosts[postIndex] = post

이러한 과정을 거치던데

const post = {...state.mainPosts[postIndex]}

부분이 왜 {}로 감싸져 있는걸까요??

대괄호인 []로 감싸져야 하는게 아닐까요??

그 아래인 const mainPosts = [...state.mainPosts]로 []로 감싸져 있는데 왜그런걸까요 

퀴즈

Redux Thunk의 주된 역할은 무엇일까요?

상태 변화 로깅하기

비동기 액션 처리 돕기

액션 타입 상수화 강제하기

리듀서 불변성 자동으로 관리하기

답변 1

0

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

post는 일반 객체입니다. mainPosts는 배열이고요.

일반 객체는 {...}고, 일반 배열은 [...]로 얕은 복사합니다.

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

아~ 그렇군요 이해했습니다^^

문종현님의 프로필 이미지
문종현

작성한 질문수

질문하기