• 首页 首页 icon
  • 工具库 工具库 icon
    • IP查询 IP查询 icon
  • 内容库 内容库 icon
    • 快讯库 快讯库 icon
    • 精品库 精品库 icon
    • 问答库 问答库 icon
  • 更多 更多 icon
    • 服务条款 服务条款 icon

TypeScript简记二

武飞扬头像
月牙尔
帮助1

TypeScript数组类型

TypeScrip数组类型即:声明变量为数组。

数值数组、字符串数组等(number[], string[])是泛型数组Array<string>,Array<string>的简写。

定义数组的方法:

学新通 

 数组方法:

  • every():检测数组元素的每个元素是否都符合条件
  • some():检测数组元素中是否有元素符合指定条件
  • concat():练成两个或更多的数组,并返回结果
  • filter():检测数组元素,并返回符合条件所有元素的数组
  • foeEach():数组每个元素都执行一次回调函数
  • indexOf():搜索数组中的元素,并返回它所在的位置
  • join():把数组的所有元素放入一个字符串
  • lastIndexOf():返回一个指定的字符串值最后出现的位置,在一个字符串中的指定位置从后向前搜索
  • map():通过指定函数处理数组的每个元素,并返回处理后的数组
  • pop():删除数组的最后一个元素并返回删除的元素
  • push():向数组的末尾添加一个或更多元素,并返回新的长度
  • reduce():将数组元素计算为一个值(从左到右)
  • reduceRight():将数组元素计算为一个值(从右到做左)
  • reverse():反转数组的元素顺序
  • slice():选取数组的一部分,并返回一个新数组
  • sort():对数组的元素进行排序
  • splice():从数组中添加或删除元素
  • toString():把数组转为字符串,并返回结果
  • unshift():向数组的开头添加一个或多个元素,并返回新的长度

Tuple Types(元祖类型) 

 元祖类型是另一种特殊的数组类型,一般来说他可以存储不同类型的成语,想定了数组的长度及每个成员的类型。(普通数组也可以通过指定联合类型的类型参数,从而存放不同类型的成员)。元祖的成员是可以被修改,可以调用一系列的数组方法。

学新通

ReadonlyArray 只读数组 

只读数组是TS提供的一种特殊的数组,它的任何成员都不能被修改。

特点

  • 无法进行增删改等操作,push、pop等修改自身的方法都无法使用。
  • 可以使用不修改自身的数组方法。例如使用slice方法,放回一个普通的数组。
  • 代表一种类型,无法当做构造函数使用,不能使用new操作符。
  • 在声明一个只读数组类型的变量时需指定类型参数,只读数组里只能存放该类型的值。
  • 只读数组类型的变量本身可以接受普通数组的赋值。
  • 普通数组不能接收只读数组的赋值。

 联合/交叉类型

联合类型:联合类型表示取值可以为多种类型中的一种,使用 | 分割每个类型。约束取值:

学新通

 以上1 | 2,true | false,‘click’ | 'scroll' | 'mousemove'被称为字面量类型,分别为数字、布尔、字符串字面量类型,可以用来约束取值,只能是其中几个值中的一个。

交叉类型:交叉类型是将多个类型合并为一个类型,使用&定义交叉类型。可以将多个接口类型合并成一个类型,实现等同于接口与继承,如: 

学新通

类型保护和类型守卫

类型保护是一种TypeScript技术,用于获取变量类型信息,通常使用在条件块语句中。类型保护具有唯一的属性,可以确保测试的值是根据返回的布尔值设置的类型。

联合类型 类型保护=自动类型推断

有五种主要的方式来使用类型保护:

  • instanceof关键字
  • typeof关键字
  • in关键字
  • 等式收缩是保护器
  • 带有谓词的自定义类型保护 

类型守卫:定义一个函数,他返回值是一个类型谓词,生效范围为子作用域。

学新通

 高级类型

索引类型:

  • 关键字【keyof】:其相当于取值对象中的所有key组成的字符串字面量,如:学新通
  • 关键字【in】:其相当于取值字符串字面量中的一种可能,配合反省p,即表示每个key。
  • 关键字【?】:通过设定对象可选选项,即可自动推出子集类型。

函数返回值类型:

  • 关键字【extends】跟随泛型出现时,表示类型推断,其表达式可类比三元表达式,如T === 判断?类型A:类型B学新通
  • 关键字【infer】:出现在类型推荐中,表示定义类型变量,可以用于指代类型。学新通

这篇好文章是转载于:学新通技术网

  • 版权申明: 本站部分内容来自互联网,仅供学习及演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,请提供相关证据及您的身份证明,我们将在收到邮件后48小时内删除。
  • 本站站名: 学新通技术网
  • 本文地址: /boutique/detail/tanhgggeba
系列文章
更多 icon
同类精品
更多 icon
继续加载