本文最后更新于:2024年4月25日 上午
使用interface
声明接口
声明对象
interface
可用于声明对象类型 TS不检查属性的序列
1 2 3 4 5 6 7 8 9 10 11
| interface Message { age: number; name: string; isMale: boolean; }
const aboutMe: Message = { age: 20, isMale: true, name: 'Jonathan', }
|
可选属性
使用?:
表示为可选参数
1 2 3 4 5 6
| interface Message { name: string; age: number; isMale: boolean; birth?: string; }
|
只读属性
readonly
声明属性只读(不可重写)
1 2 3 4 5 6 7 8 9 10 11 12 13 14
| interface Message { age: number; name: string; readonly isMale: boolean; }
const aboutMe: Message = { age: 20, isMale: true, name: 'Jonathan', }
aboutMe.isMale = false
|
任意属性
用接口声明一个必须有name
与age
的类型,且可以增加任意其它属性
1 2 3 4 5 6 7 8 9 10 11 12 13
| interface Person { name: string; age: number; [id: string]: any; }
const man: Person = { name: 'Jonathan', age: 20, isMale: true, nationality: 'CN' }
|
接口继承