WindowOrWorkerGlobalScope.caches

This is an experimental technology
Check the Browser compatibility table carefully before using this in production.

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

DesktopMobile
ChromeEdgeFirefoxInternet ExplorerOperaSafariAndroid webviewChrome for AndroidFirefox for AndroidOpera for AndroidSafari on iOSSamsung Internet
caches
Experimental
Chrome Full support 40Edge Full support ≤79Firefox Full support 42
Full support 42
Full support 52
Notes
Notes caches now defined on WindowOrWorkerGlobalScope mixin.
IE No support NoOpera ? Safari No support NoWebView Android Full support YesChrome Android Full support YesFirefox Android Full support 42
Full support 42
Full support 52
Notes
Notes caches now defined on WindowOrWorkerGlobalScope mixin.
Opera Android Full support YesSafari iOS Full support YesSamsung Internet Android Full support Yes

Legend

Full support
Full support
No support
No support
Compatibility unknown
Compatibility unknown
Experimental. Expect behavior to change in the future.
Experimental. Expect behavior to change in the future.
See implementation notes.
See implementation notes.

See also