일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 백준
- jest
- Study
- 리액트
- Solid
- DAILY
- next.js
- 자바스크립트
- SVG
- typescript
- Docker
- type
- Component
- 타입스크립트
- 알고리즘
- react
- test
- docker-compose
- Unit Test
- error
- 아키텍처
- BFS
- 타입
- DFS
- 다이나믹프로그래밍
- 프론트엔드
- svgr
- nextjs
- javascript
- Primitive
- Today
- Total
목록타입스크립트 (5)
`프론트엔드 개발자` 개형이의 벽돌집
타입스크립트에서 tsconfig.json 은 타입스크립트를 자바스크립트로 변환활 때 설정을 정의해놓은 파일이다. 주요 속성으로는 무엇이 있는지 기록해두고자 한다. noImplicitAny 🤔 noImplicitAny를 true로 설정할 경우 any로 추론될 수 있는 타입을 명시적으로 지정해줘야 한다. tsconfig.json 에 아래와 같이 지정해주면 된다. "compilerOptions": { "noImplicitAny": true, // ~~~ } 1) true일 때 const add = (a, b) => { return a + b; }; // a, b의 타입이 any로 추론되어 에러가 발생함 const add = (a: number, b: number) => { return a + b; }; // ..
😼 타입 가드 (Type Guard)를 사용하면 조건문을 통해 타입을 좁혀나갈 수 있다. 이를 잘 활용하면 가독성과 생산성이 좋은 코드가 될 수 있다고 하니 어떻게 사용하는지 기록해둘 것이다. typeof 를 사용한 타입 가드 Primitive 타입일 경우 typeof Type Guard을 주로 사용한다. 예시는 다음과 같다. function getNumber (value: number | string): number { value; // number | string if (typeof value === "number") { value; // number return value; // typeof type guard에서 타입 하나를 리턴할 경우 해당 타입으로는 더이상 추론되지 않습니다. } value; ..
타입스크립트는 명시적으로 타입을 지정해줄 수도 있지만 지정을 안해줄 경우 자동으로 타입을 추론한다. 어떻게 추론될까? let 과 const의 타입 추론 변수의 초깃값으로 추론이 된다. let a = 'Mark' // string const b = 'Mark' // 'Mark' => literal type let c = 38 // number const d = 38 // 38 => literal type let g = ['Mark', 'Pen'] // string[] const h = ['Mark', 'Pen'] // string[] const i = ['Mark', 'Pen'] as const // readonly ['Mark', 'Pen'] Best Common Type 타입스크립트는 타입 추론을 할 ..
회사 스프린트 일정으로 인해 정신이 없어서 업로드가 늦어져서 아쉽지만, 타입스크립트에서 타입을 어떻게 사용하는지 기록해두고자 한다. 원시 타입 (Primitive type) 기본적으로 알고 있는 타입의 종류이다. string number boolean etc.. let str: string = "string"; let num: number = 100; let bool: boolean = true; 변수 선언 시 타입을 명시해줄 수 있다. (위의 경우는 굳이 명시를 안해줘도 알아서 타입을 추론한다) 배열 배열의 타입은 ~~[] 혹은 Array의 형태로 지정 가능하다. let num_arr: number[] = [] let num_arr1: Array = [] // -> number[] or Array 또다..