Closed hotdog1004 closed 3 weeks ago
NonNullable
타입은 타입스크립트에서 제공하는 유틸리티 타입으로 제네릭으로 받는 T가 null 또는 undefined일 때 never 또는 T를 반환하는 타입입니다. NonNullable
을 사용하면 null이나 undefined가 아닌 경우를 제외할 수 있습니다.
type NonNullable<T> = T extends null | undefined ? never : T;
타입가드 예시
function isNonNullable<T>(value: T): value is NonNullable<T> {
return value !== null && value !== undefined;
}
타입스크립트에서 제공하는 유틸리티 타입으로 제네릭으로 받는 T가 null 또는 undefined 일 때 never 또는 T를 반환하는 타입입니다. 이 유틸리티 타입을 통해 null 이나 undefined가 아닌 경우를 제외할 수 있습니다.
function NonNullable<T>(value:T): value is NonNullable<T> {
return value !== null && value !== undefined;
}
NonNullable
타입은 타입스크립트의 유틸리티 타입으로, 제네릭으로 T
를 받아 null과 undefined를 제거합니다.
즉, T
가 null이나 undefined일 경우 이를 제외한 나머지 타입만 남게 만드는 유틸리티 타입입니다.
isNonNullable
T
를 받아 null이나 undefined일 경우 체크is
연산자로 반환값의 타입 명시적으로 정의
function isNonNullable<T>(value: T): value is NonNullable<T> {
return value !== null && value !== undefined
}
const value: string | null = "Hello" if (isNonNullable(value)) { console.log(value.length) }
function isNonNullable<T>(value: T): value is NonNullable<T> {
return value !== null && value !== undefined;
}
const age = number | null | undefined = 30;
if (isNonNullable(age)) {
console.log(age); // 30
else {
console.log("null or undefined");
}
TS가 제공하는 유틸리티 타입 중 하나로 특정 타입에서 null과 undefined를 제거한 타입을 만듭니다.
type Example = string | number | null | undefined;
type NonNullableExample = NonNullable<Example>;
위에서 NonNullableExample 타입은 null과 undefined는 제거되어 string | number가 됩니다
📚 171p - 173p 📌 NonNullable 타입이 무엇인지 설명 후 NonNullable 타입을 사용한 타입 가드 예시를 작성해주세요.