TypeScript学习笔记 -- 接口对象
1.接口对象-对对象的形状(shape)进行描述
2.基本用法: 规定了对象属性的类型
接口的首字母大写,一般会在接口前面加上大写的I
定义好的接口使用的时候,其中的属性不可以多也不可以少。
//定义
interface IPerson {
name: string,
age:number
}
//使用
let p:IPerson = {
name: '小明',
age: 5
}
3.可选属性:接口中的属性可有可无,使用?定义,但是依然不可以使用接口未定义的属性
//定义
interface IPerson {
name: string,
age:number,
sex?: string,
}
//使用
let p:IPerson = {
name: '小明',
age: 5
}
4.任意属性:对于属性名不确认的情况。也就是可以随意创建任意数量的符合任意属性规定的属性
但是定义任意属性后,其他属性必须满足任意属性的规定
//错误 interface IPerson { name: string,
age: number,//这里会报错,由于任意属性定义的属性值为string类型
sex?: string,
[propName: string]: string
}
//定义 interface IPerson { name: string, sex?: string,
[propName: string]: any } //使用 let p:IPerson = { name: '小明',
width: '',
}
4.只读属性:只能在创建的时候被赋值,使用readonly定义
interface IPerson {
name: string,
readonly id: number
}
let p:IPerson = {
name: '小明',
id: 123,
}
//不可再次赋值,报错
p.id = 321;
浙公网安备 33010602011771号