개발자
react를 사용할때 useState hook을 많이 사용하는데요 const [count, setCount] = useState(0) 이렇게 사용하고 setCount를 이용해서 count가 변화가 되는데 왜 const를 사용하는 걸까요?! let [count, setCount] = useState(0)가 더 맞는거같은 기분입니다.
답변 2
평소에 아무 생각없이 사용하는 경우가 많았는데 이 질문으로 다시 찾아보게 되네요! - https://dudghsx.tistory.com/18 - https://hewonjeong.github.io/deep-dive-how-do-react-hooks-really-work-ko/ 위의 두 개 링크를 참고해 보면 좋을것 같아요.
이미, 앞서 엄홍재님이 좋은 글 링크를 남겨주셨네요. 링크된 글의 내용이 제가 좀 잘 못 이해했을 수도 있고, 작성자가 좀 다르게 보신 부분이 있어, 첨언합니다. const [count, setCount] = useState(0)으로 가져온 count는 현재 카운터 값을 가져 온 것이고, setCount는 그 상태값을 바꿀 수 있는 "함수"를 값으로 지칭 한 것입니다. 그 변화 대상인 상태(카운터)는 변화되는 게 맞지만, 그 일을 수행하는 "함수"는 바뀌지 않기 때문에 const로 쓴 거라고 이해하고 있습니다. 물론 let으로 하든 var로 하든 안되는 건 아니지만, const가 더 적절한 상황입니다. 즉, const setCount = (newCounter) => { /* 어떤 일을 해서 카운터 변경 */ } 이런 함수를 useState안 에서 만들어서 반환한 거고, 그걸 받아서 setCount라는 상수에 바인딩한 거죠. 이 useState처럼, 다른 함수를 받거나 반환하거나 둘다 하는 함수를 "고차함수"(또는 고계함수, Higher-order function)라고 부릅니다. 제 이해에 틀린 부분이나 보완할 부분은 편히 알려주시면 제게도 도움이 되겠습니다.
지금 가입하면 모든 질문의 답변을 볼 수 있어요!
현직자들의 명쾌한 답변을 얻을 수 있어요.
이미 회원이신가요?
지금 가입하면 모든 질문의 답변을 볼 수 있어요!