// 接口 自定义的静态类型
// 只能是对象或者函数
// 1 定义接口
interface person {
// readonly key 作用:设置某个属性为只读类型, 只要修改key就会报错
readonly name: string,
// key? 作用:设置某个属性可有可无
age?: number,
// propName 作用 传入不确定的属性
[propName: string]: any,
// say函数,返回值为string
say(): string
}
// 使用接口
function getPerson(person: person): string { // 表示person 中必须有name 为 string
console.log(person.name)
// person.name = 'asdfasdf'; // 报错
return person.name
}
getPerson({
name: 'aa',
aa: 123,
say() {
return ''
}
})
// 2 在类中使用接口
// implements interfaceName 在类使用接口
// 注意: 类中必须具备接口中属性。
class user implements person {