//我们定义了一个接口 Person,接着定义了一个变量 tom,它的类型是 Person。
//这样,我们就约束了 tom 的形状必须和接口 Person 一致。
interface Person {
name:string;
age:number;
}
let tom: Person = {
name: 'Tom',
age: 25
};
//定义的变量比接口少了一些属性是不允许的,多了属性也是不允许的:
// interface Person {
// name: string;
// age: number;
// }
// let tom: Person = { //报错
// name: 'Tom'
// };
//可选属性 age? 可选属性的含义是该属性可以不存在
//这时仍然不允许添加未定义的属性
interface Person2 {
name: string;
age?: number;
}
let tom2: Person2 = {
name: 'Tom'
};