일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- 호이스팅
- async/await
- RTK Query
- ESlint
- React
- app router
- 태그된 유니온
- webpack
- 이분 검색
- 공변성
- 타입 좁히기
- 무한 스크롤
- CORS
- useAppDispatch
- 투포인터
- map
- dfs
- Promise
- 결정 알고리즘
- TS
- 리터럴 타입
- SSR
- Jest
- recoil
- 반공변성
- tailwind
- 인터섹션
- Cypress
- CI/CD
- autosize
Archives
- Today
- Total
목록타입 모델링 (1)
짧은코딩
"모두 null" || "모두 null이 아닌 데이터"로 모델링 하기
타입만으로 어떤 변수가 null이 될 수 있는지 없는지를 표현하기는 어렵다. B에서 A의 값이 나오는 거면 A가 null이 될 수 없을 때 B도 null이 될 수 없다. 반대로 A가 null이 될 수 있으면 B도 null이 될 수 있다. 값이 전부 null이거나 전부 null이 아닌 경우로 구분해야 모델링하기 쉽다. 최댓값, 최솟값 예시 잘못된 코드 function extent(nums: number[]) { let min, max for (const num of nums) { if (!min) { min = num max = num } else { min = Math.min(min, num) max = Math.max(max, num) // ~~~ Argument of type 'number | und..
TS/이펙티브 타입스크립트
2023. 3. 27. 17:27