TypeScript中的interface和type有什么区别?

2021年3月20日16:37:44 发表评论 1,068 次浏览

两种方法类型和接口用于描述TypeScript中对象的结构。但是拥有一些特定的功能, 这些功能将根据情况提供帮助, 在它们之间进行选择, 完全取决于开发人员。

输入TypeScript:TypeScript中的Type System描绘了该语言支持的不同数据类型。它分为三个主要部分, 分别是任意种类, 内置式和用户定义类型。 TypeScript中的Type System负责检查所获取的任何值的数据类型, 然后才能将其提供为程序的输入。

例子:

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

输出如下:

"Duplicate identifier 'Geeks'" error.

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

例子:

// 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中的类型和接口之间的区别:

类型 接口
它是数据类型的集合。 它是一种语法形式。
它支持为类型创建新名称。 它提供了一种定义实体的方法。
它具有相对较少的功能。 它具有相对更多的功能。
它不支持使用对象。 它支持使用对象。
不能使用多个合并的声明。 可以使用多个合并的声明。
具有相同名称的两种类型会引发异常。 具有相同名称的两个接口将合并。
它没有实现目的。 它具有实现目的。

木子山

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: