CacheStorage: has() method
Baseline Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since April 2018.
Secure context: This feature is available only in secure contexts (HTTPS), in some or all supporting browsers.
Note: This feature is available in Web Workers.
The has()
method of the CacheStorage
interface returns a Promise
that resolves to true
if a
Cache
object matches the cacheName
.
You can access CacheStorage
through the Window.caches
property in windows or through the WorkerGlobalScope.caches
property in workers.
Syntax
has(cacheName)
Parameters
cacheName
-
A string representing the name of the
Cache
object you are looking for in theCacheStorage
.
Return value
a Promise
that resolves to true
if the cache exists or
false
if not.
Examples
The following example first checks whether a cache called 'v1' exists. If so, we add a list of assets to it. If not then we run some kind of cache set-up function.
caches
.has("v1")
.then((hasCache) => {
if (!hasCache) {
someCacheSetupFunction();
} else {
caches.open("v1").then((cache) => cache.addAll(myAssets));
}
})
.catch(() => {
// Handle exception here.
});
Specifications
Specification |
---|
Service Workers # cache-storage-has |
Browser compatibility
BCD tables only load in the browser