- 接口定义对象的类型
interface Person {
name: string;
age: number;
}
let tom: Person = {
name: 'tom',
age: 20,
};
- 可选属性,用 ? 标记
interface Person2 {
name: string;
age?: number;
}
let tom2: Person2 = {
name: 'tom',
};
- 只读属性,用 readonly 标记
interface Person3 {
readonly name: string;
age?: number;
}
let per: Person3 = { name: 'tom' };
per.name = 'tom'; //无法为“name”赋值,因为它是只读属性
interface Add1 {
(x: number, y: number): number;
}
let add1: Add1 = (a, b) => 'result' + a + b;