typescript一些基本数据类型的理解

本文介绍了JavaScriptTypeScript中的多种数据类型,包括联合类型(如male|female和booler|string)、any类型、unknown类型,以及object、数组、元组(如[string,number])和枚举的用法。还讨论了类型别名的创建和使用。
摘要由CSDN通过智能技术生成

1. 联合类型

可以使用 | 来链接多个类型 叫联合类型

let b:male | female
let c:booler | string

2.any类型

标识任意类型,可以任意赋值;一个变量设置类型为any,相当于对该变量关闭了ts的类型监测,使用ts时,建议不使用any

let d:any //申明变量指定类型为any,称为显示any
let d //申明变量不指定类型,则ts解析器会自动判断变量类型为any 称为隐式any
d=2
d='ssss'

3.unknown类型

let e:unknown
e=22
e=true
e='dddd'

any和unknown的区别

//d的类型为any,它可以赋值给任意变量
let d  
let e:unknown
let s:string
s=d  //不会有报错提示  本来s类型为string ,这样一赋值,导致s类型关了,这样s的类型也就会出问题了
e=‘hello’
s=e//会有报错,此时e为string类型,但还是报错提示,是因为看的是这个变量,不是e的值

//unknown实际上就是一个类型安全的any,unknown的变量不能赋值给其他变量

如果就想e的值赋值给s,可以写:
if(typeof e==='string){
  s=e
}
或
s=e as string  //类型断言,告诉解析器e就是string类型
s=<string>e


//类型断言语法
  变量 as类型
  <类型>变量

4.object类型

//{}定义对象中可以包含哪些属性,{属性名:属性值,属性名?:属性值},在属性名后加?标识属性可选
let b:{name:string,age?:number}
b={name:'sdfg',age:9}

//[propName:string]:any;   表示任意类型的属性
let c:{name:string,[propName:string]:any}
 c={name:'zhagnsan',age:17,gender:'男'}//c对象里必须要有name属性,其他属性可选

5.数组

//2种写法
let e:string[]
e=['d','a']

let g:Array<number>
g=[4,6,7]

7.元祖

//元祖就是固定长度的数组
let h:[string,number]
h=['fgh',8]

8.枚举

enum Gender{
 female=0,
 male=1,
}

let i:{name:string,gender:Gender}
i={name:‘张数’,gender:Gender.female}

类型别名

type myType=1|3|5|7  //定义类型别名为:myType
let k:myType  //k的类型为myType
let l:myType //l的类型为myType
k=2
l=7
  • 9
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值