type和interface的区别

type和interface的相同点:

  都是用来定义对象或函数的形状;它俩都支持继承,并且可以相互继承。具体形式稍有差别。interface是通过extends实现的,type是通过&实现的。

type和interface的不同点:

  typeof

  1. type可以定义基本类型的别名;type TMyStr = string
  2. type可以通过typeof操作符来定义;type TMyStr1 = typeof TMyStr 
  3. type可以申明联合类型;type TUnionType = TMyStr  | TMyStr1 
  4. type可以申明元组类型;type Ty = [TMyStr, TMyStr1 ]

  interface

interface可以声明合并,这种情况下如果是type,就会定义重复定义的警告,因此无法实现声明合并。

 

posted @ 2023-02-02 11:59  671_MrSix  阅读(169)  评论(0编辑  收藏  举报