Relate two type parameters: an object type T and a key K with K extends keyof T. The return type T[K][] keeps element types precise. This pattern powers many safe property helpers.
function pluck<T, K extends keyof T>(items: T[], key: K): T[K][] {
return items.map((i) => i[key]);
}
Use a simple loop or map at runtime.
Return an array of values for a given property.