- 接口
interface t1{
name:string
}
let obj:t1 = {
name: "aoaoao"
}
console.log(obj);
// 名字一样的接口会合并
interface t1{
name:string
}
interface t1 {
age:number
}
let obj:t1 = {
name: "aoaoao",
age: 12
}
console.log(obj);
- 可选属性
interface t1{
name:string
}
interface t1 {
age?:number
}
let obj:t1 = {
name: "aoaoao",
age: 12
}
let obj2:t1 = {
name: "aoaoao",
}
console.log(obj)
console.log(obj2)
- 任意属性
interface Person {
name:string,
[propName: string]:number|string
}
let p:Person = {
name:"111",
aa: "11"
}
- 属性只读
interface Person {
readonly name: string
}
let p:Person = {
name: "张三"
}
- 接口函数
nterface Person {
readonly name: string,
cb(): void
}
let p:Person = {
name: "张三",
cb: ():void => {
}
}
p.cb()
- 扩展接口
interface Person {
name: string
}
interface B extends Person {
age: number
}
let p:B = {
name: "11",
age: 11
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。