在TS中 type和interface的区别

在 TypeScript 中,type 和 interface 也有一些区别:

1. 语法:type 使用 `type` 关键字来定义类型别名,interface 使用 `interface` 关键字来定义接口。

2. 功能:type 可以创建任意类型的别名,包括基本类型、联合类型、交叉类型、函数类型等;interface 主要用于定义对象的形状,描述对象的属性和方法。

3. 可选属性:interface 可以定义可选属性,即属性名后面加上 `?` 符号;type 别名不支持可选属性的定义。

4. 合并声明:interface 支持合并声明,即可以多次声明同一个接口,编译器会将它们合并为一个接口;type 别名不支持合并声明。

5. 实现类:interface 可以被类实现,类可以通过 `implements` 关键字来实现接口;type 别名不能被类实现。

6. 扩展类型:interface 可以通过 `extends` 关键字来扩展其他接口;type 可以使用交叉类型 `&` 来扩展其他类型。

总体来说,type 主要用于定义类型别名,可以创建任意类型的别名;interface 主要用于定义对象的形状,描述对象的属性和方法。在实际使用中,可以根据具体需求选择使用 type 还是 interface。

  • 3
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值