Skip to main content

memoize

function memoize<Deps, GetDeps, Args, T>(fn, getDeps): (...args) => ReturnType<T>;

Memoizes a function based on its arguments and dependencies, where the comparison algorithm is a shallow equality check based on Object.is1

Type Parameters​

Type Parameter
Deps extends any[]
GetDeps extends () => Deps
Args extends any[]
T extends (...args) => any

Parameters​

ParameterType
fnT
getDepsGetDeps

Returns​

(...args): ReturnType<T>;

Parameters​

ParameterType
...argsParameters<T>

Returns​

ReturnType<T>

Footnotes​

  1. https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/is ↩