let a :{name:string,[xx:string]:any}
a = {name:'小明',age:28,gender:'男'} 正确
a = {name:111,age:28,gender:'男'} 错误,name必须是字符串
//这句话的意思就是a对象中 name是必填的并且只能是字符串,后面属性名是字符串,不必填,假如加的话值可以为任意类型
// 后面的任意类型设置为string,name中的number会失效,也会跟着把校验改为string
let b = {name:number,[xx:string]:string}b = {name:222,age:28,gender:'男'} 错误,name必须是字符串,age必须为字符串
b = {name:111,age:28,gender:222} 错误,name必须是数字串并且每一项必须为字符串