“枕头里藏满了发了霉的梦,梦里住满了无法拥有的人。”——网易云评论

我们在typescript中使用变量结构时如果需要指定类型,可以这样写:

1
const { a, b, c }: { a: any; b: string; c: { cname: any; cid: any; } } = obj;

但一般还是定义接口

1
2
3
4
5
6
7
8
9
10
interface IObj {
a: any;
b: string;
c: IC;
}
interface IC {
cname: any;
cid: any;
}
const { a, b, c }: IObj = obj;

对于箭头函数也是同理

1
array.map(({ a, b, c }: IObj)=>{})

如果我们接口中某个属性可以为null或其他属性,我们可以使用|

1
2
3
4
5
interface IObj {
a: any;
b: string | number | null;
c: IC;
}

甚至如果该属性是可选的,我们可以使用?

1
2
3
4
5
interface IObj {
a: any;
b?: string;
c: IC;
}