StorageManager: estimate() Methode
Baseline 2023Newly available
Since September 2023, this feature works across the latest devices and browser versions. This feature might not work in older devices or browsers.
Sicherer Kontext: Diese Funktion ist nur in sicheren Kontexten (HTTPS) in einigen oder allen unterstützenden Browsern verfügbar.
Hinweis: Diese Funktion ist in Web Workers verfügbar.
Die estimate()
Methode des StorageManager
Interfaces fragt den Storage Manager, wie viel Speicher der aktuelle Origin belegt (usage
) und wie viel Platz verfügbar ist (quota
).
Diese Methode arbeitet asynchron, daher gibt sie ein Promise
zurück, das gelöst wird, sobald die Informationen verfügbar sind. Der Erfüllungs-Handler des Promises wird mit einem Objekt aufgerufen, das die Nutzungs- und Quoteninformationen enthält.
Syntax
estimate()
Parameter
Keine.
Rückgabewert
Ein Promise
, der zu einem Objekt mit den folgenden Eigenschaften aufgelöst wird:
quota
-
Ein numerischer Wert in Bytes, der eine konservative Annäherung des gesamten Speichers bietet, der für den Site-Origin oder die Web-App auf dem Gerät des Benutzers verfügbar ist. Es ist möglich, dass mehr Speicherplatz verfügbar ist, obwohl Sie sich nicht darauf verlassen können.
usage
-
Ein numerischer Wert in Bytes, der den Speicherplatz annähert, der derzeit von der Site oder der Web-App von dem durch
quota
angegebenen verfügbaren Speicherplatz genutzt wird. Einheit ist Byte. usageDetails
Nicht standardisiert-
Ein Objekt, das eine Aufschlüsselung der
usage
nach Speichersystem enthält. Alle enthaltenen Eigenschaften werden eineusage
größer als 0 haben und jedes Speichersystem mit 0usage
wird aus dem Objekt ausgeschlossen.
Hinweis: Die zurückgegebenen Werte sind nicht exakt: Zwischen Kompression, Deduplizierung und Verschleierung aus Sicherheitsgründen werden sie ungenau sein.
Es kann sein, dass die quota
von Origin zu Origin variiert. Diese Varianz basiert auf Faktoren wie:
- Wie oft der Benutzer die Seite besucht
- Öffentliche Daten zur Beliebtheit der Seite
- Benutzerbindungssignale wie das Setzen von Lesezeichen, Hinzufügen zum Startbildschirm oder Akzeptieren von Push-Benachrichtigungen
Ausnahmen
TypeError
-
Wird ausgelöst, wenn das Abrufen eines lokalen Speichers fehlgeschlagen ist. Zum Beispiel, wenn der aktuelle Origin ein undurchsichtiger Origin ist oder wenn der Benutzer den Speicher deaktiviert hat.
Beispiele
In diesem Beispiel erhalten wir die Nutzungsschätzungen und zeigen dem Benutzer den Prozentsatz der aktuell genutzten Speicherkapazität an.
HTML
<label>
You're currently using about <output id="percent"> </output>% of your
estimated storage quota (<output id="quota"></output>).
</label>
JavaScript
navigator.storage.estimate().then((estimate) => {
document.getElementById("percent").value = (
(estimate.usage / estimate.quota) *
100
).toFixed(2);
document.getElementById("quota").value =
`${(estimate.quota / 1024 / 1024).toFixed(2)}MB`;
});
Ergebnis
Spezifikationen
Specification |
---|
Storage # ref-for-dom-storagemanager-estimate |
Browser-Kompatibilität
Siehe auch
- Storage API
Storage
, das Objekt, das vonWindow.localStorage
zurückgegeben wirdStorageManager
navigator.storage