一 什么是localStorage
對(duì)瀏覽器來說,使用 Web Storage 存儲(chǔ)鍵值對(duì)比存儲(chǔ) Cookie 方式更直觀,而且容量更大,它包含兩種:localStorage 和 sessionStorage
sessionStorage(臨時(shí)存儲(chǔ)) :為每一個(gè)數(shù)據(jù)源維持一個(gè)存儲(chǔ)區(qū)域,在瀏覽器打開期間存在,包括頁面重新加載
localStorage(長期存儲(chǔ)) :與 sessionStorage 一樣,但是瀏覽器關(guān)閉后,數(shù)據(jù)依然會(huì)一直存在
二 使用方法
注意:sessionStorage 和 localStorage 的用法基本一致,引用類型的值要轉(zhuǎn)換成JSON,所以這里就只列舉localStorage
1 保存
//對(duì)象
const info = { name: ``'hou'``, age: 24, id: ``'001' };
//字符串
const str=``"haha"``;
localStorage.setItem(``'hou'``, JSON.stringify(info));
localStorage.setItem(``'zheng'``, str);
2 獲取
var data1 = JSON.parse(localStorage.getItem(``'hou'``));
var data2 = localStorage.getItem(``'zheng'``);
3 刪除
//刪除某個(gè)
localStorage.removeItem(``'hou'``);
//刪除所有
localStorage.clear();
4 監(jiān)聽
Storage 發(fā)生變化(增加、更新、刪除)時(shí)的 觸發(fā),同一個(gè)頁面發(fā)生的改變不會(huì)觸發(fā),只會(huì)監(jiān)聽同一域名下其他頁面改變 Storage
window.addEventListener(``'storage'``, ``function (e) {
console.log(``'key'``, e.key); console.log(``'oldValue'``, e.oldValue);
console.log(``'newValue'``, e.newValue); console.log(``'url'``, e.url);
})
5瀏覽器中查看
