前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >专栏 >TypeScript 中的基础类型:原始类型、对象类型、数组类型、元组类型、枚举类型和联合类型

TypeScript 中的基础类型:原始类型、对象类型、数组类型、元组类型、枚举类型和联合类型

原创
作者头像
网络技术联盟站
发布2023-07-06 15:32:07
发布2023-07-06 15:32:07
8460
举报

TypeScript 是一种由微软开发的静态类型编程语言,它是 JavaScript 的超集,并且可以在编译时进行类型检查。TypeScript 强大的类型系统使得开发者能够更轻松地编写可维护、可扩展的代码。本文将详细介绍 TypeScript 中的基础类型,包括原始类型、对象类型、数组类型、元组类型、枚举类型和联合类型。

原始类型

在 TypeScript 中,有以下几种原始类型:

数字类型

数字类型用于表示整数或浮点数。可以使用 number 关键字来声明数字变量。

例如:

代码语言:typescript
复制
let num: number = 123;

字符串类型

字符串类型用于表示文本数据。可以使用 string 关键字来声明字符串变量。

例如:

代码语言:typescript
复制
let str: string = "Hello";

布尔类型

布尔类型用于表示逻辑值,即 truefalse。可以使用 boolean 关键字来声明布尔变量。

例如:

代码语言:typescript
复制
let isTrue: boolean = true;

空值和未定义类型

空值类型 (void) 用于表示没有返回值的函数。未定义类型 (undefined) 用于表示未赋值的变量。可以使用 voidundefined 关键字来声明对应的变量。

例如:

代码语言:typescript
复制
let result: void = undefined;  // 空值类型
let undef: undefined = undefined;  // 未定义类型

空值和无类型类型

空值类型 (void) 用于表示没有返回值的函数。 null 类型用于表示空值或者对象引用为空。可以使用 voidnull 关键字来声明对应的变量。

例如:

代码语言:typescript
复制
let nothing: null = null;  // 空值类型
let nul: null = null;  // 空值类型

对象类型

对象类型用于表示非原始数据类型,包括对象、数组、函数等。可以使用 object 关键字来声明对象类型。

对象类型

对象类型用于表示一个对象,其中包含多个键值对。可以使用 {} 或者 object 关键字来声明对象类型。对象类型可以指定属性名和属性值的类型。

例如:

代码语言:typescript
复制
let person: { name: string; age: number } = {
  name: "John",
  age: 25,
};

数组类型

数组类型用于表示一个由相同类型的元素组成的有序集合。可以使用 类型[] 或者 Array<类型> 的语法来声明数组类型。

例如:

代码语言:typescript
复制
let numbers: number[] = [1, 2, 3, 4, 5]; // 数字数组
let names: string[] = ["Alice", "Bob", "Charlie"]; // 字符串数组

元组类型

元组类型用于表示一个固定长度和类型的数组。可以使用 [类型1, 类型2, ...] 的语法来声明元组类型。

例如:

代码语言:typescript
复制
let user: [string, number] = ["John", 25]; // 元组类型

函数类型

函数类型用于表示一个函数。可以使用 (参数类型) => 返回值类型 的语法来声明函数类型。

例如:

代码语言:typescript
复制
let add: (x: number, y: number) => number = function (x: number, y: number): number {
  return x + y;
};

枚举类型

枚举类型用于表示一组有名字的常量。可以使用 enum 关键字来声明枚举类型。

例如:

代码语言:typescript
复制
enum Color {
  Red,
  Green,
  Blue,
}

let color: Color = Color.Green;

在枚举类型中,每个枚举成员都有一个与它关联的数字值,默认从 0 开始。也可以手动指定枚举成员的数值。

联合类型

联合类型用于表示一个变量可以是多种类型之一。可以使用 类型1 | 类型2 | ... 的语法来声明联合类型。

例如:

代码语言:typescript
复制
let value: string | number = "Hello"; // 联合类型
value = 123; // 合法

联合类型可以提供更大的灵活性,使得我们能够处理多种不同类型的值。

类型推断和类型断言

TypeScript 具有强大的类型推断能力,它可以根据上下文自动推断变量的类型。例如,如果我们在定义变量时直接赋值,TypeScript 可以推断出变量的类型。

代码语言:typescript
复制
let num = 123; // 类型推断为 number
let str = "Hello"; // 类型推断为 string

此外,我们还可以使用类型断言来告诉编译器某个值的类型。类型断言有两种语法形式,<类型>值值 as 类型

代码语言:typescript
复制
let someValue: unknown = "Hello";
let strLength1: number = (<string>someValue).length;
let strLength2: number = (someValue as string).length;

类型断言可以在一些无法通过类型推断的情况下提供类型信息,但要注意谨慎使用,以避免出现类型错误。

总结

本文详细介绍了 TypeScript 的基础类型,包括原始类型、对象类型、数组类型、元组类型、枚举类型和联合类型等方面。TypeScript 强大的类型系统使得开发者能够在编译时进行类型检查,减少了在运行时出现类型错误的概率。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 原始类型
    • 数字类型
    • 字符串类型
    • 布尔类型
    • 空值和未定义类型
    • 空值和无类型类型
  • 对象类型
    • 对象类型
    • 数组类型
    • 元组类型
    • 函数类型
  • 枚举类型
  • 联合类型
  • 类型推断和类型断言
  • 总结
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档