Typescript--Typescript中的新增类型

一.any

any表示的是任意类型,一个变量设置类型为any后,相当于该变量管理了TS的类型检测,尽量不要用any

let d: any

声明变量如果不指定类型,则TS解析器会自动判断变量的类型为any(隐式的any)

let d;
d = 10;
d = 'hello'
d = true

二.unknown

unknown表示未知的类型

let e: unknown;
e = 10;
e = 'hello'

两者的区别在于:
d的类型为any,它可以赋值为任意变量。
而e的类型为unknown,但是不能直接赋值给其他变量

let s: string;
s = d; 不报错 
s = e; 报错

那么unknown类型变量如何给其他变量赋值呢?

类型断言,可以告诉解析器变量的实际类型

  1. s = e as string 变量 as 类型
  2. s = <string>e <类型>变量

三.object

  • {}用来指定对象中可以包含哪些属性
  • 语法:{属性名:属性值类型,属性名:属性值类型}
  • 在属性名后面加?,表示属性是可选的
let b: {name: string, age?: number}
b = {name: '小四',age: 18}

-如果给每个可选属性后面都加?,会比较麻烦, [propName:string]: any表示属性名为string,属性值为任意类型。此属性是可选的

let c: {name: string,[propName:string]:any}
c = {name:'小四',a:1,b:2}

四.function

  • 设置函数结构的类型声明
  • 语法:(形参:类型,形参:类型 ...)=> 返回值类型, 使用箭头函数
let d: (a:number,b:number) => number
d = function(n1,n2){
	return n1+n2
}

五.array

  • 两种类型声明方式
  • 类型[]
let e: string[]
e = ['a','b','c']

let f: number[]
f = [1,2,3]
  • Array<类型>
let g: Array<number>
g = [1,2,3]

六.tuple

  • 元组,元组就是固定长度的数组
  • 语法:[类型,类型,类型]
let h: [string,number]
h = ['hello',123]

七.enum

  • 枚举:把所有可能的值列出来
  • 语法:enum 名字
enum Gender{
	Male = 0,
	Female = 1
}
let i: {name:string, gender:Gender}
i = {
	name:'小四',
	gender: Gender.Male
}

八.类型的别名

  • 通过type关键字,起到简化的作用
type myType = 1|2|3|4|5
let k: myType
k = 1
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值