🔥码云GVP开源项目 12k star Uniapp+ElementUI 功能强大 支持多语言、二开方便! 广告
>[success] # Pick -- 类型中选取出指定的键值 ~~~ 1.在一组对象类型中挑选出想要的key 形成新的类型 ~~~ >[danger] ##### 源码 ~~~ type Pick<T, K extends keyof T> = { [P in K]: T[P]; }; ~~~ >[danger] ##### 使用 ~~~ interface Info { name:string, age:number, address:string } // 选择只使用 字段 这里选择的是name 和age 字段 const a:Pick<Info,'name'|'age'> = { name:'w', age:12 } // 当方法需要返回是一个对象时候 const info5 = { name: 'lison', age: 18, address: 'beijing', } // 返回的是一个对象 用pick 来做了指定 function pick<T, K extends keyof T>(obj: T, keys: K[]): Pick<T, K> { const res: any = {} keys.map((key) => { res[key] = obj[key] }) return res } const nameAndAddress = pick(info5, ['name', 'address']) console.log(nameAndAddress) ~~~