📅  最后修改于: 2023-12-03 15:20:43.192000             🧑  作者: Mango
在 Typescript 中,管道符号( | )被用于联合类型(Union Types)中,表示取其中一个类型。
联合类型是用来表示一个值可能的几种类型中的任何一种。这些类型之间使用管道符号( | )分隔开来。
以下是一个使用管道符号的联合类型的示例:
let myVar: string | number;
myVar = "hello";
myVar = 42;
在上面的示例中,变量 myVar
可以是字符串或者数字类型,可以被赋值为任意一个满足这两种类型之一的值。
联合类型的主要用途在于:在函数参数、返回值、变量等上下文中,允许该参数、返回值、变量等可以接受多种不同的类型。
以下是一个使用联合类型的示例:
function getLength(strOrArr: string | string[]) {
if (typeof strOrArr === "string") {
// 参数是字符串类型
return strOrArr.length;
} else {
// 参数是字符串数组类型
return strOrArr.reduce((acc, str) => acc + str.length, 0);
}
}
let myStr = "hello";
let myArr = ["hello", "world"];
console.log(getLength(myStr)); // 5
console.log(getLength(myArr)); // 10
在上面的示例中,函数 getLength
接受一个参数 strOrArr
,该参数可以是字符串或者字符串数组类型。如果参数是字符串类型,函数将返回字符串的长度;如果参数是字符串数组类型,函数将返回字符串数组中所有字符串长度之和。
在 Typescript 中,管道符号( | )用于联合类型中,表示取其中一个类型。联合类型的主要用途在于:在函数参数、返回值、变量等上下文中,允许该参数、返回值、变量等可以接受多种不同的类型。