關(guān)于localStorage的存儲(chǔ),讀取,刪除
localStorage的存儲(chǔ),讀取,刪除
localStorage存儲(chǔ)
我們通過(guò)以下方式將數(shù)據(jù)儲(chǔ)存到localStorage中
window.localStorage.setItem('key',value)
但有時(shí)value為一個(gè)對(duì)象Object,以上面的方式寫(xiě)入,會(huì)出現(xiàn)讀取的返回值為{object Object}的情況,但這并不是我們想要的,此時(shí)我們需要使用新的方式
傳入Object
window.localStorage.setItem('param',JSON.stringify(Object))
通過(guò)JSON.stringify(Object)方法將對(duì)象轉(zhuǎn)化為一個(gè)json格式的字符串進(jìn)行存儲(chǔ)
localStorage讀取
我們通過(guò)以下方式來(lái)讀取localStorage中的值
window.localStorage.getItem('key')
相對(duì)的在讀取json格式字符串只有我們也無(wú)法直接使用,需要將它轉(zhuǎn)換為josn對(duì)象之后才是我們想要的結(jié)果,所以我們需要調(diào)用 JSON.parse()方法來(lái)進(jìn)行轉(zhuǎn)化,之后在繼續(xù)使用
JSON.parse(window.localStorage.getItem('key'))
localStorage刪除
我們通過(guò)以下方法來(lái)刪除對(duì)應(yīng)key以及key中的內(nèi)容
window.localStorage.removeItem('key')
localStorage清空所有的key
清空l(shuí)ocalStorage中所有的key;
注意:請(qǐng)謹(jǐn)慎使用,它會(huì)清空所有的本地存儲(chǔ)數(shù)據(jù)
window.localStorage.clear()
localStorage使用詳解
localStorage簡(jiǎn)介
localStorage 和 sessionStorage 一樣,都是 HTML5 中最新引入的 Web 存儲(chǔ) API。
Web 存儲(chǔ) API,英文為 Web Storage API,通過(guò)它可以方便地在用戶(hù)瀏覽器中存儲(chǔ)鍵值對(duì)。
Web 存儲(chǔ) API 包括兩個(gè)對(duì)象:
localStorage
sessionStorage
在 HTML5 之前,應(yīng)用數(shù)據(jù)需要存放在 Cookie 中,每次請(qǐng)求時(shí)都需要攜帶它。相較而言,Web 存儲(chǔ) API 擁有以下優(yōu)點(diǎn):
- 不向服務(wù)器傳輸信息,更加安全。
- 比起 [[202009011658 Cookie 數(shù)量和大小的限制|Cookie 4kb 的容量限制]],可以在本地存儲(chǔ)大量數(shù)據(jù),通常為 5mb。
除此之外,localStorage 還有以下特點(diǎn):
- 永久存儲(chǔ)數(shù)據(jù),沒(méi)有過(guò)期時(shí)間,除非使用 JavaScript、清除瀏覽器緩存或者本地?cái)?shù)據(jù)才能夠刪除。
- 存儲(chǔ)容量上限比 Cookie 和 SessionStorage 都要大。
- 遵循同源策略,來(lái)自同一個(gè)源的所有頁(yè)面共享同樣的數(shù)據(jù)。同源指的是域名和協(xié)議相同。
- 其中存儲(chǔ)的鍵值對(duì)都是字符串,如果不是字符串將自動(dòng)轉(zhuǎn)換為字符串。
調(diào)試localStorage
- Ctrl - Shift - I 或者 F12
- 點(diǎn)擊 Application
- 左側(cè)點(diǎn)擊 Storage 下面的 LocalStorage
localStorage的CRUD
為 localStorage 添加或修改數(shù)據(jù)有三種方式:
localStorage.age = 100 localStorage['age'] = 100 localStorage.setItem('age', 100) ?// 推薦使用
在 localStorage 中查看數(shù)據(jù)也有三種方式:
localStorage.age localStorage['age'] localStorage.getItem('age') ?// 推薦使用
在 localStorage 中刪除數(shù)據(jù)有三種方式:
delete localStorage.age delete localStorage['age'] localStorage.removeItem('age') ?// 推薦使用
清空整個(gè) localStorage:
// 清空整個(gè) localStorage localStorage.clear()
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
javascript 簡(jiǎn)練的幾個(gè)函數(shù)
看CSDN上別人的代碼,感覺(jué)比較精煉,拿來(lái)主義,需要的朋友可以看下。2009-08-08基于zepto.js實(shí)現(xiàn)仿手機(jī)QQ空間的大圖查看組件ImageView.js詳解
這篇文章主要介紹了基于zepto.js實(shí)現(xiàn)仿手機(jī)QQ空間的大圖查看組件ImageView.js的源碼和使用方法,并附上一個(gè)使用ImageView.js的實(shí)例,這里分享給大家,有需要的小伙伴參考下。2015-03-03JavaScript?的setTimeout與事件循環(huán)機(jī)制event-loop
這篇文章主要介紹了JavaScript?的setTimeout與事件循環(huán)機(jī)制event-loop,文章圍繞主題展開(kāi)詳細(xì)的內(nèi)容介紹,具有一定的參考價(jià)值,需要的小伙伴可以參考一下2022-07-07讓 JavaScript 輕松支持函數(shù)重載 (Part 2 - 實(shí)現(xiàn))
在上一篇文章里,我們?cè)O(shè)計(jì)了一套能在JavaScript中描述函數(shù)重載的方法,這套方法依賴(lài)于一個(gè)叫做Overload的靜態(tài)類(lèi),現(xiàn)在我們就來(lái)看看如何實(shí)現(xiàn)這個(gè)靜態(tài)類(lèi)。2009-08-08原生javascript實(shí)現(xiàn)addClass,removeClass,hasClass函數(shù)
這篇文章主要介紹了原生javascript實(shí)現(xiàn)addClass,removeClass,hasClass函數(shù)的相關(guān)代碼,有需要的小伙伴可以參考下2016-02-02實(shí)用javaScript技術(shù)-屏蔽類(lèi)
實(shí)用javaScript技術(shù)-屏蔽類(lèi)...2006-08-08使用JS批量選中功能實(shí)現(xiàn)更改數(shù)據(jù)庫(kù)中的status狀態(tài)值(批量展示)
我們?cè)陂_(kāi)發(fā)項(xiàng)目的時(shí)候經(jīng)常會(huì)在后臺(tái)管理時(shí)用到批量展示功能來(lái)動(dòng)態(tài)的修改數(shù)據(jù)庫(kù)的值。下面以修改數(shù)據(jù)庫(kù)的status狀態(tài)值來(lái)實(shí)現(xiàn)批量展示功能2016-11-11代碼精簡(jiǎn)的可以實(shí)現(xiàn)元素圓角的js函數(shù)
代碼精簡(jiǎn)的可以實(shí)現(xiàn)元素圓角的js函數(shù)...2007-07-07老生常談document.ready和window.onload
這篇文章主要介紹了document.ready和window.onload的相關(guān)知識(shí),包括document.ready和window.onload的區(qū)別,要使用document.ready()或者document.onload()的原因分析,本文結(jié)合實(shí)例代碼給大家介紹的非常詳細(xì),需要的朋友參考下吧2024-01-01