• 카테고리

    질문 & 답변
  • 세부 분야

    프론트엔드

  • 해결 여부

    해결됨

useState 내부 작동 방식이 궁금하네용

22.03.04 11:03 작성 조회수 118

2

        const [counter, setCounter] = React.useState(
 
 
 
 
const로 선언했으니 couter의 값이 바뀌면 안되는건가 싶은데 setCounter 호출을 하면 counter값이 바뀌는게 참 신기하네요
 

답변 1

답변을 작성해보세요.

0

좋은 의문이에요 ㅎㅎ

const는 let과 달리 '재할당'을 막는 특성이 있죠.

const [counter, setCounter] = React.useState()

counter = 3; // 이러면 에러가 나요. const로 선언한 counter에 값을 재할당하는거니까요

setCounter(3); // 이러면 재할당이 아닌 값 변경이라 괜찮습니다 :)

 

아래 코드도 참고하심 좋겠네요.

const foo = { a: 1, b: 2 };

foo.a = 3; // 에러남. 재할당 상황

foo = { a: 4, b: 5 }; // 에러나지 않음. 내부 값 조작.