반응형
SMALL
noImplicitAny
function add(a, b) {
return a + b
}
noImplicitAny가 해제돼있다면, 해당 코드의 타입은 다음과 같습니다.
function add(a: any, b: any): any {}
any타입을 매개변수에 사용하면 타입 체커는 유명무실해짐
따라서 noImplicitAny = true로해야함
그러면 위 코드는 다음과 같은 에러를 반환
// ‘a’ 매개변수에는 암시적으로 any 형식이 포함됩니다.
- 암시적으로 any로 설정됨
- 이는 해당 환경에서 오류로 간주
에러를 해결하려면 다음과 같이 하면됨
function add(a: number, b: number) {
return a + b
}
// 혹은
function add(a: any, b: any) {
return a + b
}
새 프로젝트를 시작한다면 처음부터 noImplicitAny = true로 작업해야함
strictNullChecks
strictNullChecks는 null과 undefined가 모든 타입에서 허용되는지 확인하는 설정
strictNullChecks가 해제됐을 때는 해당코드는 유효한 코드입니다.
const x: number = null
strictNullChecks가 true일 때는 오류입니다.
// ‘null’ 형식은 ‘number’ 타입에 할당할 수 없습니다.
null을 허용하려면 다음과 같이해야합니다
const x: number | null = null;
이 속성을 true로 안할 경우, 다음과 같은 에러를 자주 마주칠 수 있습니다.
// undefined는 객체가 아닙니다
반응형
LIST
'TypeScript' 카테고리의 다른 글
타입단언보다 타입선언을 사용하자(feat. DOM element는 좀 다름) (0) | 2023.02.25 |
---|---|
keyof 사용법 (0) | 2023.02.25 |
| 와 &의 차이 (0) | 2023.02.25 |
타입을 집합으로 이해하기 (0) | 2022.06.19 |
코드생성과 타입은 관계가 없음 (0) | 2022.06.19 |