This is an experimental technology
Because this technology's specification has not stabilized, check the compatibility table for usage in various browsers. Also note that the syntax and behavior of an experimental technology is subject to change in future versions of browsers as the specification changes.
The caches
read-only property of the WindowOrWorkerGlobalScope
interface returns the CacheStorage
object associated with the current context. This object enables functionality such as storing assets for offline use, and generating custom responses to requests.
Syntax
var myCacheStorage = self.caches; // or just caches
Value
A CacheStorage
object.
Example
the following example shows how you'd use a cache in a service worker context to store assets offline.
this.addEventListener('install', function(event) { event.waitUntil( caches.open('v1').then(function(cache) { return cache.addAll( '/sw-test/', '/sw-test/index.html', '/sw-test/style.css', '/sw-test/app.js', '/sw-test/image-list.js', '/sw-test/star-wars-logo.jpg', '/sw-test/gallery/', '/sw-test/gallery/bountyHunters.jpg', '/sw-test/gallery/myLittleVader.jpg', '/sw-test/gallery/snowTroopers.jpg' ); }) ); });
Specifications
Specification | Status | Comment |
---|---|---|
Service Workers The definition of 'caches' in that specification. |
Working Draft | Defined in a WindowOrWorkerGlobalScope partial in the newest spec. |
Service Workers | Working Draft | Initial definition. |
Browser compatibility
Feature | Chrome | Firefox (Gecko) | Internet Explorer | Opera | Safari |
---|---|---|---|---|---|
Basic support | 40.0 | 42 (42) 52 (52)[1] |
No support | ? | No support |
Feature | Android | Chrome for Android | Firefox Mobile (Gecko) | IE Mobile | Opera Mobile | Safari Mobile |
---|---|---|---|---|---|---|
Basic support | (Yes) | (Yes) | 42.0 (42) 52.0 (52)[1] |
(Yes) | (Yes) | (Yes) |
[1] caches
now defined on WindowOrWorkerGlobalScope
mixin.