typeScript--[接口属性interface]

接口是对 JavaScript 本身的随意性进行约束,通过定义一个接口,约定了变量、类、函数等应该按照什么样的格式进行声明,实现多人合作的一致性。TypeScript 编译器依赖接口用于类型检查,最终编译为 JavaScript 后,接口将会被移除。

一.可选属性

interface Selectable {
    name?: string;
    age: number;
}
let s: Selectable = {
    age: 12
}

带有可选属性的接口与普通的接口定义差不多,只是在可选属性名字定义的后面加一个 ? 符号。

二.只读属性

一些对象属性只能在对象刚刚创建的时候修改其值。你可以在属性名前用 readonly 来指定只读属性

interface ReadOnly {
  readonly name: string;
  age: number;
}
var r: ReadOnly = {
  name: "逍遥的码农",
  age: 18,
};
r.name = "逍遥"; //无法为“name”赋值,因为它是只读属性。

三. 任意属性

有时候我们希望接口允许有任意的属性,可以用 [] 将属性包裹起来:

interface AtWill {
    name: string;
    age: number;
    [props: string]: any;
}

var a: AtWill = {
    name: "逍遥的码农",
    age: 18,
    work: "cv", //任意属性
}

你可能感兴趣的:(typeScript,typescript)