일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |
Tags
- SSR
- 공변성
- Cypress
- webpack
- 반공변성
- 결정 알고리즘
- async/await
- 투포인터
- 리터럴 타입
- TS
- autosize
- app router
- dfs
- 태그된 유니온
- React
- 타입 좁히기
- 인터섹션
- 이분 검색
- Promise
- Jest
- useAppDispatch
- tailwind
- CORS
- ESlint
- RTK Query
- recoil
- map
- CI/CD
- 호이스팅
- 무한 스크롤
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