react hooks(2)
-
JavaScript 클로저 완전 정복: 함수는 어떻게 자신이 태어난 환경을 기억하는가
프론트엔드 개발자 면접에서 자주 나오는 JavaScript 질문 중 하나가 바로 클로저(Closure) 다.많은 개발자가 클로저를 “함수 안의 함수” 또는 “외부 변수에 접근하는 내부 함수” 정도로 기억한다. 하지만 이 설명은 절반만 맞다. 클로저를 제대로 이해하려면 단순히 코드 패턴을 외우는 것이 아니라, JavaScript가 스코프를 어떻게 결정하는지, 함수가 어떤 환경을 기억하는지, 그리고 그 특성이 실무에서 상태 관리, 이벤트 핸들러, 비동기 처리, React Hooks, 메모리 관리와 어떻게 연결되는지까지 이해해야 한다.이 글에서는 클로저를 기초부터 깊이 있게 정리해본다.1. 클로저를 한 문장으로 정의하면클로저는 함수와 그 함수가 선언될 당시의 렉시컬 환경이 함께 묶인 구조다.조금 더 쉽게 말하..
2026.06.20 -
React 생명주기 깊이 이해하기: Mount, Update, Unmount를 넘어 Effect의 생명주기까지
React를 처음 배울 때 우리는 보통 컴포넌트 생명주기를 다음 세 단계로 이해한다.Mount → Update → Unmount컴포넌트가 화면에 처음 나타나고, 상태나 props가 바뀌면서 다시 렌더링되고, 더 이상 필요 없어지면 화면에서 제거된다. 이 설명은 틀리지 않다. 하지만 현대 React를 실무에서 제대로 사용하려면 이 정도 이해만으로는 부족하다.특히 함수 컴포넌트와 Hooks 중심의 React에서는 생명주기를 단순히 componentDidMount, componentDidUpdate, componentWillUnmount에 대응시키는 방식으로 이해하면 오히려 코드를 잘못 설계하기 쉽다.React의 생명주기를 제대로 이해하려면 다음 질문으로 접근해야 한다.컴포넌트는 언제 다시 실행되는가?렌더링은..
2022.12.24