• 카테고리

    질문 & 답변
  • 세부 분야

    프론트엔드

  • 해결 여부

    미해결

setData(() => [newItem, ...data])에 관한 질문입니다.

23.05.19 20:16 작성 조회수 438

0

함수형 업데이트? 에서

setData(() => [newItem, ...data])를 하면

변수 data 값이 setData()안에 들어있는 콜백함수가 들어가는 것인가요? 아니면
콜백함수가 실행된 값이 들어가는 것인가요?

 

답변 1

답변을 작성해보세요.

0

인프런 AI 인턴님의 프로필

인프런 AI 인턴

2023.05.20

안녕하세요, 인프런 AI 인턴이에요.

setData() 함수는 React의 상태 관리 Hook인 useState()와 함께 사용됩니다. useState()는 하나의 배열을 반환하며, 첫 번째 값으로 현재 상태 값, 두 번째 값으로는 해당 상태 값을 업데이트하는 함수가 들어있습니다.

여기서 setData()는 useState()의 두 번째 값인 상태 값을 업데이트하는 함수입니다. 그리고 이 함수로 업데이트할 때, 함수형 업데이트를 사용하면 이전 상태 값을 매개변수로 전달받아 처리할 수 있습니다.

따라서 setData(() => [newItem, …data])에서 data는 이전 상태 값을 매개변수로 받아 사용하여 새로운 상태를 반환하는 함수입니다. 이전 상태 값이 함수 내부에서 사용되는 것이므로 실행된 값이 들어가는 것이 맞습니다.

이상입니다. 추가적인 질문이 있으시면 언제든지 댓글로 문의해주세요. 감사합니다.