window.sessionStorage
和window.localStorage
接口用於腳本在瀏覽器保存數據。javascript
window.sessionStorage.setItem('key', 'value'); window.localStorage.setItem('key', 'value');
window.sessionStorage.getItem('key') window.localStorage.getItem('key')
localStorage.removeItem('key'); window.localStorage.clear()
完整用法html
存函數會轉化成字符串。存對象的時候會變成"[object Object]"
,由於({1:'xxx'}).toString()//"[object Object]"
html5
localStorage.setItem('jsonString', JSON.stringify({name: 'mtt'}))
當一個js變量被重新賦值,變量的值立即被改變,但當頁面刷新時,變量又回到最初的狀態。
而localStorage的變量不存在頁面裏,windows系統存在客戶端本地的C盤的一個文件裏。java
想要只提示用戶一次,當下次用戶進入這個網站上的時候,不跳出提示框。json
<script> let already = localStrorage.getItem('已經提示了') if(!already){ alert('你好,咱們的網站即將改版了') localStorage.setItem('已經提示了', true) } </script>
sessionStorage保存的數據用於瀏覽器的一次會話(session),當會話結束(一般是窗口關閉),數據被清空;localStorage保存的數據長期存在,下一次訪問該網站的時候,網頁能夠直接讀取之前保存的數據。除了保存期限的長短不一樣,這兩個對象的其餘方面都一致。windows
總結:SessionStorage 在用戶關閉頁面(會話結束)後就失效。其他的和localstorage同樣promise