1、声明一个对象
type obj = Record<string,any>
interface Person{
name:string,
age:number,
phone:string
}
const person:obj = {
userId:"",
}
const person1:Person = {
name:"333",
age:66,
phone:'666'
}
使用内置Record创建对象和直接定义interface两种声明对象泛型
也可以这样使用
interface Person{
name:string,
age:number,
phone:string
}
type obj = Record<string,Person>
const person: obj = {
userId: {
name: "333",
age: 66,
phone: "666",
},
};
2、Partial可以将必填的属性全部转为可选属性(Require相反的作用)
interface Person{
name:string,
age:number,
phone:string
}
type Personial = Partial<Person>
3、我们经常需要通过[]去获取对象的某个属性
const key = ""
const person:Person = {
name:"zlb",
age:16,
phone:"159*******"
}
console.log(person[key])
会报下面这样的错误提示
需要修改为
console.log(person[key as keyof typeof person])
// 或者
console.log(person[key as keyof Person])