在 TypeScript 里面,可以定义一种叫 interface 的东西,用它描述一种数据的样子,或者叫形状。就是你可以定义一个 interface,起个名字,然后在里面添加一些属性,设置一下这些属性值的类型。然后在应用的其它地方,我们就可以把一个数据的类型设置成这种 interface。所以定义一个 interface 就相当于是定义了一种数据类型。
interface 这个词的字面意义是 接口,这个接口跟我们之前说的应用接口不是一回事儿,所以为了区分开,以后我们会直接叫它 interface,就不给它起中文名儿了。
这里就是定义了一个叫 User 的 interface,在这个 interface 里面有一个 id 属性,对应的类型是 number,还有一个 name 属性,这个属性值的类型是 string。现在我们就可以把这个 interface 作为某个数据的类型了。
这里我们把这个 user 的类型设置成了 User 这个 interface,这样在这个 user 里面,就应该会包含 id 还有 name 这两个属性了。
interface 这种东西是 TypeScript 里面特有的,在 JavaScript 语言里并没有 interface 这种东西。这种东西只在应用的开发阶段有用,它可以作为数据的类型,在编译的时候 TypeScript 会扔掉所有的 interface 。