TypeScript 类型别名和接口


TypeScript 允许类型与使用它们的变量分开定义。

别名和接口允许在不同变量/对象之间轻松共享类型。


类型别名

类型别名允许使用自定义名称(别名)定义类型。

类型别名可用于原语,例如string或更复杂的类型,例如objectsarrays:

示例

type CarYear = number
type CarType = string
type CarModel = string
type Car = {
  year: CarYear,
  type: CarType,
  model: CarModel
}

const carYear: CarYear = 2001
const carType: CarType = "Toyota"
const carModel: CarModel = "Corolla"
const car: Car = {
  year: carYear,
  type: carType,
  model: carModel
};
亲自试一试 »

接口

接口与类型别名类似,不同之处在于它们仅有的适用于object类型。

示例

interface Rectangle {
  height: number,
  width: number
}

const rectangle: Rectangle = {
  height: 20,
  width: 10
};
亲自试一试 »


扩展接口

接口可以扩展彼此的定义。

延伸接口意味着您正在创建一个新接口,其属性与原始接口相同,并且还添加了一些新内容。

示例

interface Rectangle {
  height: number,
  width: number
}

interface ColoredRectangle extends Rectangle {
  color: string
}

const coloredRectangle: ColoredRectangle = {
  height: 20,
  width: 10,
  color: "red"
};
亲自试一试 »

TypeScript 练习

通过练习测试一下

练习:

为字符串创建类型别名,称为 carType:

 carType = 
        

开始练习