memoize function
Create a memoized version of a function.
Example
const memoizedFib = memoize(
(n: number): number => n <= 1 ? n : memoizedFib(n - 1) + memoizedFib(n - 2)
);Signature
memoize<T extends (...args: any[]) => any>(fn: T, keyResolver: (...args: Parameters<T>) => string): T
Type Parameters
- T
Function type
Parameters
- fn
Function to memoize
- keyResolver
Function to generate cache key from arguments
Returns
Memoized function