Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

refactor: 타입 가드 함수의 추론 결과 개선 #283

Closed
wants to merge 1 commit into from

Conversation

rojiwon123
Copy link
Contributor

@rojiwon123 rojiwon123 commented Oct 8, 2024

Fixes #
과거에 비해 TS에서 제공하는 타입 가드의 타입 추론 능력이 향상되었습니다. 그에 비해 기존에 사용하던 Include 연산은 부정확한 연산 결과를 나타내는 경우가 있었습니다. (예를 들어, isString은 never로 연산됩니다.)
따라서 타입 가드 함수들의 시그니처를 수정하여 더 정확한 타입 추론 결과를 나타내도록 수정했습니다.

TS는 현재 타입 가드 함수의 결과로 교집합(Intersect) 연산 결과를 표시합니다.

before

isString(input: any); // input is any;
isString(input: unknown); // input is never;
isString(input: number | "1" | "2"); // input is "1" | "2";

after

isString(input: any); // input is string;
isString(input: unknown); // input is string;
isString(input: number | "1" | "2"); // input is "1" | "2";
isString(input: number); // input is never;

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant