继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续
感谢您的支持,我会继续努力的
赞赏金额会直接到老师账户
将二维码发送给自己后长按识别
微信支付
支付宝支付

【九月打卡】第17天 Typescript 数组和元组

stb烙饼
关注TA
已关注
手记 84
粉丝 2
获赞 4

课程章节: 第3章 TypeScript 基础 3-4 数组(Array)和元组(Tupple)

主讲老师阿莱克斯刘

课程内容:

今天学习的内容是 Typescript 的数组和元组类型。

数组

创建数组有两种方式。比如创建一个元素类型是 number 类型的数组:

let arr:number[] = [1, 2, 3, 4, 5];

还可以使用泛型创建数组:

let arr2:Array<number> = [1, 2, 3, 4, 5];

强类型语言中泛型使用的非常广泛,它不需要提前指定类型,直到真正要使用的时候再将类型通过参数的形式传递进来。

JS 中的数组非常灵活,长度不固定,元素类型任意。TS 也可以定义元素类型任意的数组:

// 元素类型是 number 或者 string
let arr3:(number|string)[] = [1, '2'];

使用 any 处理为动态类型的数组,表现就和 JS 一致了:

let arr3:any[] = [1, '2', false];

元组

元组类型是 TS 扩展的类型,原生 JS 中没有这个类型。

元组是一种特殊的数组,特点是长度固定元素类型固定

let person:[string, number] = ['kw', 18];

变量 person 的长度固定,类型也必须和声明的类型保持一一对应。如果将 person 的第一个元素改为其他非数字 string 类型,或者新增一个元素,都会报错:

person[0] = 20; // 报错:Type 'number' is not assignable to type 'string'.

person[2] = 30; // 报错:Type '30' is not assignable to type 'undefined'.

但是使用数组的 push 方法来给元组新增元素是不会报错的,并能能影响元组的值:

person.push(30);
console.log(person); // [ 'kw', 18, 30 ]

在使用元组时需要注意这一点。

还有,在声明元组时一定要指定类型,否则将会处理为普通的数组使用。

元组类型适合组织有规律的数据,比如定义一个学生,有姓名和学号,就适合使用元组类型来描述,方便代码进行处理。

课程收获

这节课学习了 Typescript 的数组类型和元组类型,声明数组有两种方式,可以声明为静态类型的数组,也可以使用 any 声明为动态类型的数组。元组是一种特殊的数组,特点是长度固定,元素类型固定。
图片描述

打开App,阅读手记
0人推荐
发表评论
随时随地看视频慕课网APP