TS中type和interface的区别

概念:

type:类型别名,为类型创建一个新名称。它并不是一个类型,只是一个别名。

interface:接口,TS 设计出来主要用于定义对象类型,可以对对象的形状进行描述。

区别:

  • 1.interface可以重复声明,type定义后不能重复声明

  • 2.interface可以通过“extends”来继承接口,这样既高效又不用重新定义。而type只能通过&来实现类似于继承的功能

  • 3.type 能够表示非对象类型, 而 interface 则只能表示对象类型。

type

  • 可以定义基本类型别名,如type StringType = string
  • 可以声明联合类型,如 type paramType = number | string;
  • 可以声明元组类型,如type arrType = [string, string, number]
  • 定义对象时严谨的来说,type 是引用,而 interface是定义。

猜你喜欢

转载自blog.csdn.net/qq_37548296/article/details/131173989