
function pick<T, U extends keyof T>(data: T, keys: U[]): { [K in U]: T[K] } {
const obj: any = {};
for (const key of keys) {
obj[key] = data[key];
}
return obj;
}
const user = {
name: ‘Tom’,
age: 19,
};
pick(user, [‘name’, ‘age’]);

function pick<T, U extends keyof T>(data: T, keys: U[]): { [K in U]: T[K] } {
const obj: any = {};
for (const key of keys) {
obj[key] = data[key];
}
return obj;
}
const user = {
name: ‘Tom’,
age: 19,
};
pick(user, [‘name’, ‘age’]);