📅  最后修改于: 2021-01-11 12:28:53             🧑  作者: Mango
在TypeScript中,我们可以定义一个可以具有多种类型值的变量。换句话说,TypeScript可以将一种或两种不同类型的数据(即数字,字符串等)组合为一种类型,称为联合类型。联合类型是表达具有多种类型的变量的强大方法。通过在类型之间使用竖线('|')符号,可以组合两个或多个数据类型。
(type1 | type2 | type3 | ........ | type-n)
let value: number|string;
value = 120;
console.log("The Numeric value of a value is: "+value);
value = "Welcome to JavaTpoint";
console.log("The String value of a value is: "+value);
输出:
The Numeric value of the value is: 120
The String value of the value is: Welcome to JavaTpoint
在函数,我们可以传递联合类型作为参数。我们可以从以下示例中了解它。
function display(value: (number | string))
{
if(typeof(value) === "number")
console.log('The given value is of type number.');
else if(typeof(value) === "string")
console.log('The given value is of type string.');
}
display(123);
display("ABC");
输出:
The given value is of type number.
The given value is of type of string.
TypeScript允许将联合类型传递给数组。我们可以从以下示例中了解它。
let arrType:number[]|string[];
let i:number;
arrType = [1,2,3,4];
console.log("Numeric type array:")
for(i = 0;i
输出:
Numeric type array:
1
2
3
4
String type array:
India
America
England
枚举用于创建包含常量列表的类型。默认情况下,枚举具有索引值(0、1、2、3等)。我们可以在下面的示例中看到枚举,其中包含颜色列表。
export enum Color {RED, BLUE, WHITE}
代替枚举,我们可以使用联合类型,并且可以以更短的方式获得类似的好处。
export type Color = 'red' | 'white' | 'blue';
const myColor: Color = 'red';
console.log(myColor.toUpperCase());
输出:
RED