- 类型守卫: typeof(number,string,boolean,object,function,undefined)
-
类型缩小:等值类型缩小(===,!==,==,!=作为判断条件的),in操作符缩小,instanceof操作符缩小,真值缩小(”,undefined,null,NaN,0),分配缩小。
type Fish = {swim:()=>void}
type Bird = {fly:()=>void}
function move(animal:Fish|Bird){
if('swim' in animal){
return animal.swim();
}
return animal.fly();
}
- 类型谓词:is:用户自定义类型保护。
// 通过泛型定义通用类型保护函数
function isOfType(
target: unknown,
prop: keyof T
): target is T {
return (target as T)[prop] !== undefined;
}
【信息由网络或者个人提供,如有涉及版权请联系COOY资源网邮箱处理】
© 版权声明
部分内容为互联网分享,若有侵权请联系站长删除。
THE END
暂无评论内容