완전 좋아! 지금까지 이야기한 내용을 기준으로,
[]와 {} 비구조화 할당 개념을 React 관점에서 정리해줄게.
React 문맥에서 헷갈리지 않도록 정리하면 아래와 같아 👇
배열이나 객체에서 필요한 값을 “꺼내서 변수에 바로 할당”하는 JavaScript ES6 문법
[]const [변수1, 변수2] = 배열;
useState, useReducer, 등) 는 값을 배열 형태로 반환하기 때문.const [count, setCount] = useState(0);
count: 현재 상태 값setCount: 상태를 변경할 함수useState가 [값, 함수] 형태로 배열을 리턴하니까!{}const { 키1, 키2 } = 객체;
const { title, onClick } = props;
props라는 객체에서 필요한 키값만 추출해서 사용| 구분 | 구조 분해 대상 | 예시 | 언제 사용? |
|---|---|---|---|
[] 배열 비구조화 | Hook 등 배열 반환 함수 | useState, useReducer | 상태 관리, reducer 사용 시 |
{} 객체 비구조화 | props, 객체 데이터 | props, location, event.target 등 | 컴포넌트 props, API 응답 다룰 때 |
const { name = "익명" } = user;
const { name: userName } = user;
const { data: { user } } = response;
[]= 배열에서 꺼낼 때,
{}= 객체에서 꺼낼 때,
둘 다 React에서 아주 자주 쓰이는 JS 문법이다.
필요하면 이 내용 Word/PDF로도 정리해줄 수 있어!
혹은 코드 예제 위주로 더 연습하고 싶다면 실습 버전도 만들어줄게.
말만 해, 개발자 지호의 사이드킥이니까 😎💙