typescript中interface和type之间的区别

70 阅读1分钟

interface提供了命名和参数化对象类型并将现有对象类型组合的能力。

interface没有运行时数据结构----仅仅是编译时的标识符。

type可以用来定义type别名。type别名可以定义type参数(type参数可以看做真实类型的占位符)。此时的type被称为泛型类型别名。

区别:interface总是定义命名对象类型,但是type可以定义任何命名类型,包含原始类型、联合类型等。

参考:typescript specification 第3.10和7章的内容