TypeScript接口是否与C结构相同?

时间:2018-02-13 08:11:55

标签: typescript

据我所知,TypeScript接口只能有属性,而不能有方法。来自C ++,这使得它们看起来更像是普通C结构而不是C ++接口,它通常具有没有实现的方法,也没有数据成员。

将TypeScript接口视为旧式数据结构是否正确?我看到的唯一区别是成员本身可以是"对象"有自己的方法。

1 个答案:

答案 0 :(得分:1)

不,说他们没有方法是不对的。

他们可以定义任何实现接口的类实现的方法,其方式与其他语言的接口大致相同,例如:

export interface IStudent {
  Name: string;
  IsEnrolled: boolean;
  Enroll();
}

export class Student implements IStudent {
  Name: string;
  IsEnrolled: boolean;
  Enroll() {
    this.IsEnrolled = true;
  }
}