blob: 6f094fa7053909142130a6274bf7cd3f12ed9de7 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
|
---
title: StorageManager.estimate()
slug: Web/API/StorageManager/estimate
translation_of: Web/API/StorageManager/estimate
---
<p>{{securecontext_header}}{{APIRef("Storage")}}</p>
<p><strong><code>estimate()</code></strong>方法是{{domxref("StorageManager")}}的一个接口,用于估算某一个域名(或一个站点)下Storage Manager的总存储空间和已经使用了的存储空间。此方法为一个异步方法,如果此方法可用,那么其返回一个结果为resolved的{{jsxref("Promise")}}对象。resolved接收的参数是一个带有已使用数据存储空间和总可用总存储空间的{{domxref("StorageEstimate")}}对象。</p>
<h2 id="语法">语法</h2>
<pre class="syntaxbox">var <em>estimatePromise</em> = <em>StorageManager</em>.estimate();</pre>
<h3 id="参数">参数</h3>
<p>无</p>
<h3 id="返回值">返回值</h3>
<p>{{domxref('StorageEstimate')}}类型的状态为resolved的{{jsxref('Promise')}}</p>
<p>此数据包含了此应用(或域名)可用的存储空间({{domxref("StorageEstimate.quota")}})和目前已经使用了的存储空间({{domxref("StorageEstimate.usage")}})。</p>
<p>这些值不是明确的数字,在进行压缩,重复数据删除和出于安全原因起见进行了混淆之后,这个数据是不精确的。</p>
<p>你可能会发现不同的应用或站点分配的存储空间不同,具体取决于用户访问频率,和网站受欢迎程度等数据。</p>
<h2 id="Example" name="Example">示例</h2>
<p>在这个示例中,我们使用estimate()得到目前所使用的存储空间占全部存储空间的百分比。</p>
<h3 id="HTML_内容">HTML 内容</h3>
<pre class="brush: html"><p>
You're currently using about <span id="percent">
</span>% of your available storage.
</p>
</pre>
<h3 id="JavaScript_内容">JavaScript 内容</h3>
<pre class="brush: js">navigator.storage.estimate().then(function(estimate) {
document.getElementById("percent").innerHTML =
(estimate.usage / estimate.quota * 100).toFixed(2);
});
</pre>
<h3 id="结果">结果</h3>
<p>{{ EmbedLiveSample('Example', 600, 40) }}</p>
<h2 id="规范">规范</h2>
<table class="standard-table">
<tbody>
<tr>
<th scope="col">Specification</th>
<th scope="col">Status</th>
<th scope="col">Comment</th>
</tr>
<tr>
<td>{{SpecName('Storage','#dom-storagemanager-estimate','estimate()')}}</td>
<td>{{Spec2('Storage')}}</td>
<td>Initial definition.</td>
</tr>
</tbody>
</table>
<h2 id="浏览器兼容性">浏览器兼容性</h2>
<p>{{Compat("api.StorageManager.estimate")}}</p>
<h2 id="参见">参见</h2>
<ul>
<li>Storage API</li>
<li>{{domxref("Storage")}}, the object returned by {{domxref("Window.localStorage")}}</li>
<li>{{domxref("StorageManager")}}</li>
<li>{{domxref("navigator.storage")}}</li>
</ul>
|