Сообщество IT-специалистов
Ответы на любые вопросы об IT
Профессиональное развитие в IT
Удаленная работа для IT-специалистов
function memoize(f, timeout) { const memo = {}; return () => (new Date() < memo.time + timeout) ? Promise.resolve(memo.result) : f().then(r => (memo.time = +new Date(), memo.result = r)); }