StorageManager.persist()

Secure context
This feature is available only in secure contexts (HTTPS), in some or all supporting browsers.

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

The persist() method of the StorageManager interface requests permission to use persistent storage, and returns a Promise that resolves to true if permission is granted and box mode is persistent, and false otherwise.

Syntax

navigator.storage.persist().then(function(persistent) { ... })

Parameters

None.

Return value

A Promise that resolves to a Boolean.

Example

if (navigator.storage && navigator.storage.persist)
  navigator.storage.persist().then(function(persistent) {
    if (persistent)
      console.log("Storage will not be cleared except by explicit user action");
    else
      console.log("Storage may be cleared by the UA under storage pressure.");
  });

Specifications

Specification Status Comment
Storage
The definition of 'persist' in that specification.
Living Standard Initial definition.

Browser Compatibility

DesktopMobile
ChromeEdgeFirefoxInternet ExplorerOperaSafariAndroid webviewChrome for AndroidFirefox for AndroidOpera for AndroidSafari on iOSSamsung Internet
persistChrome Full support 52
Full support 52
No support 48 — 52
Alternate Name
Alternate Name Uses the non-standard name: requestPersistent
Edge Full support ≤79Firefox Full support 55IE ? Opera Full support YesSafari ? WebView Android Full support 52
Full support 52
No support 48 — 52
Alternate Name
Alternate Name Uses the non-standard name: requestPersistent
Chrome Android Full support 52
Full support 52
No support 48 — 52
Alternate Name
Alternate Name Uses the non-standard name: requestPersistent
Firefox Android Full support 55Opera Android Full support YesSafari iOS ? Samsung Internet Android Full support 6.0
Full support 6.0
No support 5.0 — 6.0
Alternate Name
Alternate Name Uses the non-standard name: requestPersistent

Legend

Full support
Full support
Compatibility unknown
Compatibility unknown
Uses a non-standard name.
Uses a non-standard name.