TypeScript로 코드를 작성하다 보면 아래와 같은 상황을 마주칠 수 있습니다.const args = [8, 5];// ❌ 에러: 2개의 인수가 필요한데, 0개 이상을 가져왔습니다.// Error: Expected 2 arguments, but got 0 or more.const angle = Math.atan2(...args);분명 args 배열에는 두 개의 숫자가 들어있는데, 왜 TypeScript는 Math.atan2 함수에 인수가 정확히 두 개 전달될 것이라고 확신하지 못하고 오류를 발생시킬까요? 하지만 아래처럼 as const를 추가하면 오류가 사라집니다.const args = [8, 5] as const;// ✅ 정상 작동const angle = Math.atan2(...args);이 차이..
React 애플리케이션을 개발하다 보면 성능 문제에 부딪히는 순간이 옵니다. 특히 컴포넌트가 복잡해지고 상태(state)가 많아질수록 사소한 변경에도 불필요한 렌더링이 발생하며 앱이 느려지기 시작합니다.이때 우리에게 필요한 것이 바로 성능 최적화이며, 그 중심에 있는 Hook이 바로 useMemo입니다.useMemo의 핵심 아이디어는 **"계산된 값을 렌더링 사이에 기억하는 것"**입니다. 이를 통해 비용이 큰(expensive) 계산 결과를 메모리에 저장해두고(memoizing), 필요할 때만 다시 계산하여 애플리케이션의 성능을 향상시킵니다.useMemo란 무엇이고, 어떻게 작동할까요?useMemo는 두 개의 인자를 받는 React Hook입니다.생성 함수 (creation function): 값을 계..
- Total
- Today
- Yesterday
- 토글버튼
- DFS
- 정수록
- 일괄삽입
- 퀵 정렬
- DP
- 백준
- expo cli
- BFS
- figma
- 동일한 문구
- 구간합
- useMemo
- 브랜트포트 알고리즘
- 해시맵
- codespace
- 프로그래밍
- 알고리즘
- typescript
- boj
- 다이나믹 프로그래밍
- 브루트포스 알고리즘
- C++
- 메모리 초과
- 그래프 알고리즘
- as const
- 중국인의 나머지 정리
- 같은 내용
- 코딩
- react native
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | |
7 | 8 | 9 | 10 | 11 | 12 | 13 |
14 | 15 | 16 | 17 | 18 | 19 | 20 |
21 | 22 | 23 | 24 | 25 | 26 | 27 |
28 | 29 | 30 |