패스잇
프론트엔드 개발 · 기초

props와 state의 차이점은 무엇인가요? 각각 누가 소유하고 변경할 수 있는지 함께 설명해주세요.

힌트 · 데이터를 누가 내려주고 누가 바꿀 수 있는지, 읽기 전용 여부의 관점에서 접근하세요.

propsstate부모 컴포넌트자식 컴포넌트불변성

모범답안

props와 state의 가장 큰 차이점은 데이터의 소유권과 변경 가능성에 있습니다.

props는 부모 컴포넌트에서 자식 컴포넌트로 데이터를 전달하는 데 사용됩니다. props는 자식 컴포넌트에서 읽기 전용으로, 자식 컴포넌트 자체에서는 변경할 수 없습니다. 마치 부모가 자식에게 물려주는 용돈과 같다고 생각하시면 됩니다.

반면에 state는 컴포넌트 내부에서 관리되는 데이터입니다. state는 컴포넌트 자체에서 변경할 수 있으며, 컴포넌트의 상태 변화에 따라 UI를 업데이트하는 데 사용됩니다. 이는 컴포넌트가 자체적으로 가지는 변수와 비슷합니다.

정리하자면, props는 부모가 내려주는 읽기 전용 데이터이고, state는 컴포넌트 스스로가 관리하고 변경할 수 있는 데이터입니다.

읽었다면, 이제 직접 답해볼 차례예요

패스잇 앱에서 이 질문에 말로 답하면 AI가 꼬리질문까지 이어가며 1:1 코칭합니다.

함께 보는 React 면접 질문

← React 면접 질문 전체 보기