当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


TypeScript interface和type的区别用法及代码示例


两种方法类型接口用于说明 TypeScript 中对象的结构。但拥有一些根据具体情况会有帮助的特定函数,在它们之间进行选择完全取决于开发人员。

输入 TypeScript:TypeScript 中的类型系统说明了该语言支持的不同数据类型。它分为三个主要部分:任何类型,内置型, 和用户定义类型。 TypeScript 中的类型系统负责检查任何值的数据类型,然后才能将其作为程序的输入提供。

例子:

javascript


type Geeks = {
  name: string;
  age: number;
};
type MoreGeeks = {
  email: string;
};
type CombinedGeeks = Geeks & MoreGeeks;
const gfg: CombinedGeeks = {
  name: "kgowda",
  age: 20,
  email: "kgowda@gmail.com"
};
console.log(gfg);

输出:

{"name": "kgowda","age": 20,"email": "kgowda@gmail.com"}

TypeScript 中的接口:TypeScript 中的接口是所有实体都必须遵循的语法义务。它只能包含成员的声明并负责定义特性,方法, 和事件。在某种程度上,它负责定义派生类必须遵循的标准结构。

例子:

javascript


// Creating a interface
interface Geeks {
  name: string;
  age: number
}
interface Geeks {
  email: string;
}
// Using the merged interface
const gfg: Geeks = {
  name: " kgowda",
  age: 20,
  email: " kgowda@gmail.com"
};
console.log(gfg);

输出

name: " kgowda", age: 20, email: " kgowda@gmail.com"

TypeScript 中类型和接口的区别:

类型 接口
它是数据类型的集合。 它是一种语法形式。
类型更加灵活。 与打字稿类型相比,接口不太灵活。
它使用“type”关键字来创建新类型。 它使用“interface”关键字来声明接口。
它支持为类型创建新名称。 它提供了一种定义实体的方法。
它的函数相对较少。 它具有相对更多的函数。
它不支持使用对象。 它支持对象的使用。
不能使用多个合并声明。 可以使用多个合并声明。
具有相同名称的两个类型会引发异常。 具有相同名称的两个接口被合并。
它没有实施目的。 它有一个实施目的。
它不支持在类中实现或扩展联合类型的函数。 它支持typescript中的实现和扩展函数。
可以通过将多种类型合并为一种类型来创建交叉类型。 无法创建任何新的交叉接口。
它还用于基元、联合和元组等类型。 它不能与其他类型的声明一起使用。

结论-尽管 Typescript 类型和接口在某些函数上有所不同,但两者几乎相似,因此人们无法停止使用其中一种。开发人员可以选择他/她想要使用的打字稿。



相关用法


注:本文由纯净天空筛选整理自kgowda大神的英文原创作品 What is the difference between interface and type in TypeScript ?。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。