React는 렌더링된 UI를 내부적으로 따로 만들어서 관리한다. 이는 React 컴포넌트가 반환한 JSX 엘리먼트(=JavaScript 객체)가 중첩된 구조(=트리 구조)로 이루어져 있다.React는 성능 향상을 위해 실제 렌더링된 UI를 내부적으로 JavaScript
React는 v16.8부터 컴포넌트 상태와 컴포넌트 생명주기를 관리할 수 있는 API인 Hook을 제공하고 있다. Hook을 사용하면 함수 컴포넌트에서도 클래스 컴포넌트처럼 상태를 저장할 수 있고 컴포넌트 생명주기에 관여할 수 있다.
앞서 살펴본 기본적인 3가지 hook 이외에도 React에는 다양한 hook이 존재한다. useReducer useState와 역할은 비슷한데, useState가 제공하는 기능 이외에도 상태 업데이트 로직을 외부 함수로 분리할 수 있는 기능을 제공한다. 그래서 상태를
React는 기본적으로 1개의 HTML 파일을 가지고 화면을 렌더링하는 Single Page Application으로서 HTML 노드를 생성-수정-삭제하는 과정은 모두 클라이언트 측 브라우저에서 발생한다.