基本类型
布尔类型 (boolean)
布尔类型表示一个值为真或假的逻辑值。
代码语言:javascript复制let isDone: boolean = false;
数字类型 (number)
数字类型表示整数或浮点数。
代码语言:javascript复制let count: number = 10;
let price: number = 3.99;
字符串类型 (string)
字符串类型表示一串字符。
代码语言:javascript复制let message: string = "Hello, TypeScript!";
数组类型 (array)
数组类型表示一个元素的集合。
代码语言:javascript复制let numbers: number[] = [1, 2, 3, 4, 5];
let fruits: Array<string> = ["apple", "banana", "orange"];
元组类型 (tuple)
元组类型表示一个已知长度和类型的数组。
代码语言:javascript复制let person: [string, number] = ["John", 25];
枚举类型 (enum)
枚举类型表示一组具名的常量值。
代码语言:javascript复制enum Color {
Red,
Green,
Blue,
}
let color: Color = Color.Red;
任意类型 (any)
任意类型表示可以是任意类型的值。
代码语言:javascript复制let value: any = "Hello";
value = 10;
value = true;
空类型 (void)
空类型表示没有任何返回值的函数。
代码语言:javascript复制function showMessage(): void {
console.log("Hello");
}
高级类型
联合类型 (union)
联合类型表示一个值可以是多个类型中的一个。
代码语言:javascript复制let value: string | number = "Hello";
value = 10;
交叉类型 (intersection)
交叉类型表示多个类型的组合。
代码语言:javascript复制interface A {
name: string;
}
interface B {
age: number;
}
type C = A & B;
let person: C = {
name: "John",
age: 25,
};
函数类型 (function)
函数类型表示函数的参数和返回值类型。
代码语言:javascript复制type AddFunc = (a: number, b: number) => number;
let add: AddFunc = (a, b) => a b;
类型别名 (type)
类型别名可以为一个类型定义一个别名。
代码语言:javascript复制type Point = {
x: number;
y: number;
};
let p: Point = {
x: 10,
y: 20,
};
接口 (interface)
接口定义了一个对象的属性和方法。
代码语言:javascript复制interface Person {
name: string;
age: number;
}
let person: Person = {
name: "John",
age: 25,
};
类型断言
类型断言允许我们在编译期间告诉编译器变量的实际类型。
代码语言:javascript复制let value: any = "Hello";
let length: number = (value as string).length;