使用场景:当无法确定对象中有哪些属性的时候(对象可以出现任意多个属性)
interface AnyObject {
[key: string]: number
}
let obj: AnyObject = {
a: 1,
b:2,
c:3
}
console.log(obj)
解释:
- 使用
[key: string]: number来约束该接口出现的名称只要是string类型的属性名称就都可以出现 - 对象obj中就可以出现任意多个属性
- key只是占位符,可以换成任意合法的名称
- 前置知识:JS中对象({})的键都是string类型的