從localStorage讀取數(shù)據(jù)的最佳策略是使用盡可能少的鍵值,存儲(chǔ)盡可能多的數(shù)據(jù)。因?yàn)樽x取10個(gè)字符和讀取2000個(gè)字符所需時(shí)間大致是相同的,所以你應(yīng)該嘗試把盡可能多的數(shù)據(jù)保存為一個(gè)鍵值對(duì)應(yīng)的值。每次調(diào)用getItem()(或從localStorage讀取屬性)都會(huì)增加時(shí)耗,所以一定要確保每次訪問讀取數(shù)據(jù)最大化。對(duì)于任何一個(gè)變量或?qū)ο髮傩?,你越快將它讀取到內(nèi)存,后續(xù)的所有操作也會(huì)越快。
為了保持跨瀏覽器會(huì)話,localStorage的數(shù)據(jù)被寫入磁盤中。這意味著當(dāng)你從localStorage中讀取數(shù)據(jù)時(shí),你實(shí)際上是從硬盤驅(qū)動(dòng)器上讀取這些字節(jié)。讀寫硬盤開銷高昂,特別是相對(duì)于讀寫內(nèi)存來說。從本質(zhì)上講,這正是我的基準(zhǔn)測(cè)試所測(cè)試的內(nèi)容,即從緩存(對(duì)象屬性)讀取數(shù)據(jù)和從磁盤(localStorage)讀取數(shù)據(jù)的速度比較。
localStorage.setItem() 不會(huì)自動(dòng)將Json對(duì)象轉(zhuǎn)成字符串形式
用localStorage.setItem()正確存儲(chǔ)JSON對(duì)象方法是:
存儲(chǔ)前先用JSON.stringify()方法將json對(duì)象轉(zhuǎn)換成字符串形式
JSON.stringify() 方法可以將任意的 JavaScript 值序列化成 JSON 字符串
后續(xù)要操作該JSON對(duì)象,要將之前存儲(chǔ)的JSON字符串先轉(zhuǎn)成JSON對(duì)象再進(jìn)行操作
刷新頁面,sessionStorage是不會(huì)消失的哦。
做網(wǎng)站的小伙伴們可以了解一下哦。
留言反饋