返回介绍

判断类型兼容性的方式

发布于 2024-09-11 00:55:48 字数 594 浏览 0 评论 0 收藏 0

使用条件类型来判断类型兼容性。

type Result = 'wangxiaobai' extends string ? 1 : 2;

如果返回 1,则说明 'wangxiaobai' 为 string 的子类型。否则,说明不成立。但注意,不成立并不意味着 string 就是 'wangxiaobai' 的子类型了。

还有一种通过赋值来进行兼容性检查的方式。

declare let source: string;

declare let anyType: any;
declare let neverType: never;

anyType = source;

// 不能将类型“string”分配给类型“never”。
neverType = source;

对于变量 a = 变量 b,如果成立,意味着 <变量 b 的类型> extends <变量 a 的类型> 成立,即 b 类型是 a 类型的子类型,在这里即是 string extends never ,这明显是不成立的。

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文