对象
常用 :object (用来区别类型)
//对象 ———— :object (可以定义给数组)
const obj: object = { name: "qiqi" };
const arr: object = [{ name: "qiqi" }];
//对象 ———— :Object (这个可以定义的更加广泛) 小写的object不能定义字符串 数字等类型 但是大写的Object可以定义
const Object_str: Object = "123";
const Object_num: Object = 123;
const Object_bol: Object = false;
//对象 ———— :{} 等价 :Object
const Object_str1: {} = "123";
const Object_num1: {} = 123;
const Object_bol1: {} = false;
数组
//数组类型————定义接口的返回比较常用————经常和interface一起使用
const ARRAY_NUMBER: number[] = [1, 2, 3];
接口
//使用接口定义一个返回的数组
interface LISTTYPE {
//定义一个list的规则 [idx:number]——下标类型
[idx: number]: number | string;
}
//定义一个接口为————DATATYPE
interface DATATYPE {
name: string | null;//定义一个name属性 要么为字符串或者null
age: number | null;//定义一个age属性 要么为数字或者null
}
//定义一个接口————ApiReturn 这其中的属性又由上述两个接口的规定的综合
interface ApiReturn {
id: number; //这里id 定义为number
list: LISTTYPE;//这里取 interface LISTTYPE
datalist: DATATYPE;//这里取 interface DATATYPE
isflag: boolean;//这里id 定义为boolean
}
//实际的使用
const ApiData: ApiReturn[] = [
{
id: 1,
list: {
0: 123,
1: "123",
},
datalist: {
name: null,
age: 18,
},
isflag: true,
},
];
使用接口定义函数
//使用接口定义函数
interface TOTHOUSANDS {
//其中num是第一个参数为number类型 第二个参数tofixd为可选参数 (可传可不传)
// ():xxx 这种格式的xxx为返回值的类型 return 为字符串 当没有return ():void
(num: number, tofixd?: number): string;
}
枚举
//定义一个Datalist的枚举
enum Datalist{
code1='这是datalist1',
code2='这是datalist2'
}
//枚举的举例
let qiqi = 'code1'
switch (qiqi){
case 'code1':
console.log(Datalist[qiqi])
break
}