일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 렛츠기릿 자바스크립트
- 리액트
- 프로그래머스
- Async
- 4주 프로젝트
- 타입스크립트 올인원
- 제로초
- 2주 프로젝트
- 타임어택
- 토익
- SQL 고득점 Kit
- LeetCode
- 코드스테이츠
- 자바스크립트
- 백준
- 리덕스
- js
- 알고리즘
- 정재남
- 타입스크립트
- codestates
- 회고
- 토익 900
- javascript
- 코어 자바스크립트
- til
- 파이썬
- programmers
- HTTP
- 손에 익히며 배우는 네트워크 첫걸음
- Today
- Total
목록2024/03/03 (5)
Jerry
타입스크립트는 건망증이 심하다(+에러 처리법) 조심해야할 점 as는 any만큼 사용을 피해야 되는 것, as는 unknown일 때 써야한다 interface Axios { get(): void; } 타입가드로 좁혀놓아도 자바스크립트로 전환 시, interface나 type은 사라진다 -> class 사용 interface에서 class로 // interface에서 class로 interface CustomError { name: string; message: string; stack?: string; response?: { data: any; } } class CustomError extends Error { response?: { data: any; } } 타입가드로 좁혀놓음, 그 안에서 as는 안 써..
하나는 걸리겠지(오버로딩) 타입 오버로딩 같은 타입을 여러번 선언하는 것 function add(x: number, y: number): number function add(x: string, y: string): string function add(x: number | string, y: number | string): number | string { return x + y; } add(1, 2); add(1, 2, 3); add('1', '2'); // ex filter(predicate: (value: T, index: number, array: readonly T[]) => value is S, thisArg?: any): S[]; filter(predicate: (value: T, index: ..
공변성, 반 공변성, 이변성, 불변성 공변성이란? 쉽게 말해, 함수간에 서로 대입할 수 있냐 없냐 따지는 것 function a(x: string): number { return +x; } a('1'); // 1 type B = (x: string) => number | string; const b: B = a; // ?????????????????????? 리턴값은 더 넓은 타입으로 대입 가능하다 반대로, function c(x: string): number | string { return +x; } type D = (x: string) => number; const d: B = c; // here here 부분은 number | string에서 number로 대입 불가 리턴값이 더 넓은 타입에서 좁은..
map 타입 직접 만들기 Tip 타입 업그레이드하면서 코드를 추가 해준다 filter 메소드에 오버로딩을 추가하면서 타입 업그레이드 하는 법 interface Arr { filter(): void; // (1) filter(callback() => void): void; // (2) filter(callback: (v: T) => void): void; // (3) filter(callback: (v: T) => Boolean): T[]; // (4) filter(callback: (v: T) => v is T): T[]; // (5) filter(callback: (v: T) => v is S): S[]; // (6) filter(callback: (v: T) => v is S): S[]; // (7)..
forEach 타입 직접 만들기 Tip 타입을 처음부터 완벽하게 예상하고 만들기는 어려우니, 처음에는 코드에서 에러가 없을 정도로 타입핑하고 타입이 업데이트 될 때마다 타입도 같이 업데이트 해주면 된다 커스텀 함수 "forEach" 만들기 // type checking & defining custom types interface Arr { forEach(callback: (item: T, index: number) => void): void; } const a: Arr = [1, 2, 3]; a.forEach((item, index) => { console.log(item, index); item.toFixed(1); }) a.forEach((item) => { console.log(item); retu..