这是我参与更文挑战的第8天,活动详情查看:更文挑战
Typescript 文档地址:类型推论 - type inference
联合类型 - union types
// 我们只需要用中竖线来分割两个
let numberOrString: number | string
// 当 TypeScript 不确定一个联合类型的变量到底是哪个类型的时候,我们只能访问此联合类型的所有类型里共有的属性或方法:
numberOrString.length
numberOrString.toString()
类型断言 - type assertions
function getLength(input: string | number): number {
const str = input as string // 当类型是string的时候(类型断言)
if (str.length) {
return str.length
} else {
const number = input as number // 当类型是number的时候(类型断言)
return number.toString().length
}
}
类型守卫 - type guard
function getLength2(input: string | number): number {
if (typeof input === 'string') { // 类型守卫
return input.length // string类型
} else {
return input.toString().length // number类型
}
}
参考文档:Typescript中文网
人懒,不想配图,都是自己的博客内容(干货),望能帮到大家
公众号:小何成长,佛系更文,都是自己曾经踩过的坑或者是学到的东西
有兴趣的小伙伴欢迎关注我哦,我是:何小玍。 大家一起进步鸭