Skip to main content

联合类型

联合类型使用 | 分割每个类型,需要注意的是,只能访问联合类型中所有类型共有的属性或方法,否则需要分情况处理。 下面例子 foo5 接受的形参类型可以是数字、字符串和数字数组

function foo6(x: number[] | string) {
console.log(x.slice(0, 3))
}
foo6([23333])
foo6('2333')
function foo5(id: number | string | number[]) {
if (typeof id === 'string') {
console.log(id.toLocaleLowerCase())
} else if (Array.isArray(id)) {
console.log(id.join(', '))
} else {
console.log(`id's type is number`)
}
}
foo5(123)
foo5('233')
foo5([1, 2, 3])