- type 可以用来给一个类型起个新名字,当命名基本类型或联合类型等非对象类型时非常有用, 而接口不行
type MyNumber = number;
type StringOrNumber = string | number;
type Text = string | string[];
2 类型别名通过 &(交叉运算符)来扩展,而接口通过 extends 的方式来扩展。都可以进行扩展
a 类型别名
type Animal = {
name: string
}
type Bear = Animal & {
honey: boolean
}
b 接口扩展
interface Animal {
name: string
}
interface Bear extends Animal {
honey: boolean
}
3 同名接口会自动合并,而类型别名不会
a 同名接口
interface User {
name: string;
}
interface User {
id: number;
}
let user: User = { id: 666, name: "阿宝哥" };
b 类型别名
type User = {
name: string;
};
// 标识符“User”重复。ts(2300)
type User = { //Error
id: number;
};
参考文献: https://blog.csdn.net/Jadon_z/article/details/134282333
标签:name,ts,number,User,interface,type,string From: https://www.cnblogs.com/zw100655/p/18192942