proxyequal
Version:
A proxy based usage tracking and comparison
19 lines (17 loc) • 374 B
JavaScript
export var weakMemoizeArray = function weakMemoizeArray(fn) {
var cache = new WeakMap();
return function (arg) {
if (cache.has(arg)) {
var old = cache.get(arg);
if (old.length === arg.length) {
return old.value;
}
}
var ret = fn(arg);
cache.set(arg, {
value: ret,
length: arg.length
});
return ret;
};
};