aboutsummaryrefslogtreecommitdiff
path: root/files/zh-tw/web/api/storage/index.html
diff options
context:
space:
mode:
Diffstat (limited to 'files/zh-tw/web/api/storage/index.html')
-rw-r--r--files/zh-tw/web/api/storage/index.html106
1 files changed, 106 insertions, 0 deletions
diff --git a/files/zh-tw/web/api/storage/index.html b/files/zh-tw/web/api/storage/index.html
new file mode 100644
index 0000000000..b3990bf756
--- /dev/null
+++ b/files/zh-tw/web/api/storage/index.html
@@ -0,0 +1,106 @@
+---
+title: Storage
+slug: Web/API/Storage
+translation_of: Web/API/Storage
+---
+<div> </div>
+
+<div>{{APIRef("Web Storage API")}}</div>
+
+<p><a href="/en-US/docs/Web/API/Web_Storage_API">Web Storage API</a> 中的 <strong><code>Storage</code></strong> 介面提供了存取特定 domain session 及本機儲存的方法。舉例而言,它能夠對存取的資料進行新增、刪除、修改,</p>
+
+<p>在操作上,如果是對象是 domain session storage ,會呼叫 {{domxref("Window.sessionStorage")}} 。而若是 local storage,則呼叫 {{domxref("Window.localStorage")}} 。</p>
+
+<h2 id="屬性">屬性</h2>
+
+<dl>
+ <dt>{{domxref("Storage.length")}} {{readonlyInline}}</dt>
+ <dd>返回一數字,代表儲存在 <code>Storage</code> 中的物件的數量。</dd>
+</dl>
+
+<h2 id="方法">方法</h2>
+
+<dl>
+ <dt>{{domxref("Storage.key()")}}</dt>
+ <dd>當傳入一數字 <code>n</code>, 會返回 storage 裡第 n 個值的 key 值。</dd>
+</dl>
+
+<dl>
+ <dt>{{domxref("Storage.getItem()")}}</dt>
+ <dd>當傳入一 key 值, 會返回 storage 裡此 key 值對應的 value 。</dd>
+ <dt>{{domxref("Storage.setItem()")}}</dt>
+ <dd>當傳入 key 及 value 的值, 會在 storage 裡新增此 key 及 value 值,若 key 已存在,則會把值更新成傳入的 value。</dd>
+ <dt>{{domxref("Storage.removeItem()")}}</dt>
+ <dd>當傳入一 key 值, 會把此 key 從 storage 裡刪除。</dd>
+ <dt>{{domxref("Storage.clear()")}}</dt>
+ <dd>執行此方法,會刪除所有在 storage 裡的 key。</dd>
+</dl>
+
+<h2 id="範例">範例</h2>
+
+<p>在這裡,我們藉由呼叫 <code>localStorage</code> 來存取 <code>Storage</code> 物件,首先使用 <code>!localStorage.getItem('bgcolor')</code> 來<span style="font-size: 1rem; letter-spacing: -0.00278rem;">確認 </span><span style="font-size: 1rem; letter-spacing: -0.00278rem;">storage 裡是否有項目存在。</span></p>
+
+<p><span style="font-size: 1rem; letter-spacing: -0.00278rem;">如果有,則</span><span style="font-size: 1rem; letter-spacing: -0.00278rem;">執行函示</span><span style="font-size: 1rem; letter-spacing: -0.00278rem;"> </span><code style="font-size: 1rem; letter-spacing: -0.00278rem;">setStyles()</code><span style="font-size: 1rem; letter-spacing: -0.00278rem;"> ,這個函示使用 </span><span style="font-size: 1rem; letter-spacing: -0.00278rem;">{{domxref("Storage.getItem()")}} 取得 storage 的值,並且用這些值更新頁面樣式 。</span></p>
+
+<p>如果沒有,便執行另一個函示 <code style="font-size: 1rem; letter-spacing: -0.00278rem;">populateStorage()</code><span style="font-size: 1rem; letter-spacing: -0.00278rem;">,他使用 {{domxref("Storage.setItem()")}} 先設定 storage 項目的值,然後才執行</span><code style="font-size: 1rem; letter-spacing: -0.00278rem;">setStyles()</code>。</p>
+
+<pre class="brush: js">if(!localStorage.getItem('bgcolor')) {
+ populateStorage();
+}
+setStyles();
+
+function populateStorage() {
+ localStorage.setItem('bgcolor', document.getElementById('bgcolor').value);
+ localStorage.setItem('font', document.getElementById('font').value);
+ localStorage.setItem('image', document.getElementById('image').value);
+}
+
+function setStyles() {
+ var currentColor = localStorage.getItem('bgcolor');
+ var currentFont = localStorage.getItem('font');
+ var currentImage = localStorage.getItem('image');
+
+ document.getElementById('bgcolor').value = currentColor;
+ document.getElementById('font').value = currentFont;
+ document.getElementById('image').value = currentImage;
+
+ htmlElem.style.backgroundColor = '#' + currentColor;
+ pElem.style.fontFamily = currentFont;
+ imgElem.setAttribute('src', currentImage);
+}</pre>
+
+<div class="note">
+<p><strong>注意</strong>: 想要看這個範例完整運行,可以參考我們的  <a href="https://mdn.github.io/dom-examples/web-storage/">Web Storage Demo</a>.</p>
+</div>
+
+<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('HTML WHATWG', 'webstorage.html#the-storage-interface', 'Storage')}}</td>
+ <td>{{Spec2('HTML WHATWG')}}</td>
+ <td> </td>
+ </tr>
+ </tbody>
+</table>
+
+<h2 id="瀏覽器相容性">瀏覽器相容性</h2>
+
+
+
+<p>{{Compat("api.Storage")}}</p>
+
+<h2 id="See_also">See also</h2>
+
+<ul>
+ <li><a href="/en-US/docs/Web/API/Web_Storage_API/Using_the_Web_Storage_API">Using the Web Storage API</a></li>
+ <li>{{domxref("Window.localStorage")}}</li>
+ <li>{{domxref("Window.sessionStorage")}}</li>
+ <li>{{domxref("CacheStorage")}}</li>
+</ul>