TypeScript 联合类型
联合类型用于值可以是多个类型的情况。
例如,当某个属性是 string 或 number 时。
Union | (OR)
使用 | 表示我们的参数是 string 或 number:
实例
function printStatusCode(code: string | number) {
console.log(`My status code is ${code}.`)
}
printStatusCode(404);
printStatusCode('404');
联合类型错误
注意:当使用联合类型时,您需要知道您的类型是什么,以避免类型错误:
实例
function printStatusCode(code: string | number) {
console.log(`My status code is ${code.toUpperCase()}.`) // 错误:属性“toUpperCase”在“string | number”类型上不存在。
// 错误:属性“toUpperCase”在“number”类型上不存在
}
在我们的例子中,我们调用 toUpperCase() 时遇到问题,因为它是字符串方法,而数字无法访问它。