juxt
juxt() function
juxt
applies a list of functions to a list of values.
declare function juxt<FS extends Array<Arrow>>(fs: readonly [...FS]): (...args: JuxtArgs<FS>) => JuxtReturnTypes<FS>;
Example
const range = juxt([Math.min, Math.max])(1, 2, 3, 4); // [1, 4]
// with pipe
const entries = (obj: { a: number; b: number }) =>
pipe(
[Object.keys, Object.values] as const,
juxt,
(f) => f(obj),
apply(zip),
toArray,
);
entries({ a: 1, b: 2 }); // [ ["a", 1], ["b", 2] ]