CacheAPI中的缓存存储和缓存对象有什么区别

What Is The Difference Between Cache Storage and Cache Object in CacheAPI

所以我尝试从mozzila开发者网络学习cache storage和fire cache,但是我不太明白cache storage和object cache的基本区别是什么,两者功能相同

例如caches.match和cache.match具有相同的匹配缓存功能,但我不太明白什么时候使用其中之一,也许有人可以更深入地解释其中的根本区别CacheStorage 和缓存

参考: https://developer.mozilla.org/id/docs/Web/API/CacheStorage https://developer.mozilla.org/en-US/docs/Web/API/Cache

CacheStorage 接口包含多个 Cache 对象,如果您愿意,可以像一个 Map of Maps。
这允许您进行版本控制,例如,您可以有两个来自相同请求的缓存实例不会 return 相同的响应。

关于他们的match方法,如果你想在特定的缓存对象中找到响应,那么你使用cache.match,如果你想在任何缓存对象中找到它,那么你使用caches.match,其中 as MDN's article puts it

Note: caches.match() is a convenience method. Equivalent functionality is to call cache.match() on each cache (in the order returned by caches.keys()) until a Response is returned.

其他方法非常不同,因为 CacheStorage caches 将处理管理不同的 Cache 对象,而 Cache 实例将处理管理实际的 Request -> Response 链接。