TypeScript 是 JavaScript 的超集,它提供了额外的语言特性和类型系统,使得 JavaScript 代码更加健壮和易于维护。在 TypeScript 中,类型是非常重要的概念。本文将介绍 TypeScript 中的核心类型,包括基本类型、对象类型和高级类型。
基本类型
在 TypeScript 中,有以下基本类型:
number
:数字类型,包括整数和浮点数。string
:字符串类型。boolean
:布尔类型。null
和undefined
:空类型,分别表示空值和未定义的值。void
:空类型,表示没有返回值的函数。any
:任意类型,表示可以是任何类型。
示例代码:
let num: number = 123; let str: string = 'Hello, TypeScript!'; let bool: boolean = true; let n: null = null; let u: undefined = undefined; function func(): void { console.log('This is a void function.'); } let anyType: any = 'This can be any type.';
对象类型
在 TypeScript 中,对象类型可以分为两种:对象和数组。
对象
对象类型可以使用接口来定义。接口是一种抽象的类型,它定义了对象的属性和方法。接口可以用于类型检查和类型声明。
示例代码:
interface Person { name: string; age: number; gender: string; } let person: Person = { name: 'Alice', age: 18, gender: 'female', };
数组
数组类型可以使用泛型来定义。泛型是一种通用的类型,它可以在定义时指定类型,使得数组中只能存储该类型的元素。
示例代码:
let arr1: number[] = [1, 2, 3]; let arr2: Array<string> = ['a', 'b', 'c'];
高级类型
在 TypeScript 中,有以下高级类型:
联合类型
联合类型表示一个变量可以是多种类型中的一种。使用 |
分隔多个类型。
示例代码:
let union: number | string = 123; union = 'abc';
交叉类型
交叉类型表示一个变量具有多种类型的属性和方法。使用 &
分隔多个类型。
示例代码:
interface A { a: number; } interface B { b: string; } let intersection: A & B = { a: 123, b: 'abc', };
类型别名
类型别名用于给一个类型起一个新的名字,便于重复使用。可以使用 type
关键字定义类型别名。
示例代码:
type MyNumber = number; let num: MyNumber = 123;
类型断言
类型断言用于告诉编译器一个变量的类型。可以使用 as
关键字或 <类型>
语法进行类型断言。
示例代码:
let str: any = 'abc'; let len1: number = (str as string).length; let len2: number = (<string>str).length;
总结
本文介绍了 TypeScript 中的核心类型,包括基本类型、对象类型和高级类型。掌握这些类型可以使得 TypeScript 代码更加健壮和易于维护。
来源:JavaScript中文网 ,转载请注明来源 本文地址:https://www.javascriptcn.com/post/65c5a393add4f0e0ff02cef0