Promise Cache
Promise Cache
Створіть обгортку кешу для асинхронних функцій, щоб уникнути зайвих викликів.
Вимоги:
- Реалізувати
promiseCache, яка обгортає асинхронну функцію - Кешувати результати за аргументами функції
- Якщо використовуються ті самі аргументи знову, повернути кешований результат
- Підтримати інвалідацію кешу
- Правильно обробляти помилки (не кешувати помилки)
Приклад:
let callCount = 0;
const fetchUser = async (id) => {
callCount++;
return { id, name: `User${id}` };
};
const cachedFetch = promiseCache(fetchUser);
await cachedFetch(1); // Викликає fetchUser
await cachedFetch(1); // Повертає кешований результат
console.log(callCount); // 1
Examples:
Input 1:
{"args":[5]}Output 1:
10Input 2:
{"args":[10]}Output 2:
11Loading editor...
Run your code to see results
Click the Run button above