TS类型总结三其他类型

object对象类型(一切皆为对象)

let a:object;
a={}
a=function(){
}

一般不上面这样写,不关注是否是object,因为一切皆为对象
一般在意的是对象内部参数的类型

对象

// { } 用来指定对象中可以包含哪些属性 ,内部定义几个参数类型,赋值时必须写几个
// 语法:{属性名:属性值,属性名:属性值}
let b:{name:string,age:number}
b = {name:'孙悟空',age:18}
//? 表示不确定有无此属性,即属性可选
let c:{name:string,age?:number}
c = {name:'猪八戒'}
// [属性名:string]:any 定义多个字符串属性名,值为任意类型,可以代替省略的参数类型定义
let c:{name:string,[propName:string]:any}
c = {name:'沙和尚',age:18,gender:'男'}

函数

let d:Function

上面这种限制无意义
一般在意函数结构,有几个参数,返回值类型

let d:(a:number,b:number)=>number;   // 参数为number,返回值为number
// 将一个函数赋值给d,意思和上面一样,都表示一个函数和函数返回值
d = function(n1:number,n2:number):number{    
	return n1+n2
}

数组类型

语法: 类型【】 或者 Array<类型>

let list1:number[]=[1,2,3]  // 数值类型数组
let liat2:Array<number>=[4,5,6]

元祖类型 tuple (TS新增)

元组就是固定长度的数组,类型与个数一一对应 语法:【类型,类型,类型】

let tuple:[string,number,boolean]=["asd",123,false];

枚举 enum(TS新增)

将所有情况列出来,具体参数需要在多种可能情况中选出

enum Gender{
    Male   = 0,
    Female = 1
}
// gender这个参数是多选的,用枚举在上面列出
let i:{name:string,gender:Gender}  
// 实际赋值的时候选 
i={
    name:'孙悟空'gender:Gender.Male
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值