在localStorage中存儲對象數(shù)組并讀取的方法
頻繁ajax請求導致頁面響應(yīng)變慢。于是考慮將數(shù)據(jù)存儲在window.storage中,這樣只請求一次ajax,而不需要頻繁請求。
鑒于localstorage中只能存儲字符串,所以我們要借助于JSON.stringify()和JSON.parse();
$.ajax({ type: "get", async: "true", url: "", data: {}, dataType: "jsonp", success: function(data){ if(data instanceof Array){ stroage.push(JSON.stringify(data[i])); //storage是外部定義的數(shù)組 storage = [] } }, error: function(){ } });
現(xiàn)在,我們將data存儲在了storage中,當我們需要使用時:
fucntion getData(){ window.localStorage.job = JSON.stringify(storage); //將storage轉(zhuǎn)變?yōu)樽址鎯? var job = JSON.parse(window.localStorage.job); for(var i = 0; i < job.length; i++){ job[i] = JSON.parse(job[i]); } //此時job中存儲的就是對象數(shù)組了 }
本地存儲外,除了localStorage,還有sessionStorage.
(1)localStorage和sessionStorage都是用來存儲客戶端臨時信息的對象。
(2)localStorage和sessionStorage都只能存儲字符串類型的對象
(3)localStorage生命周期是永久,除非用戶手動清除localStorage信息,否則這些信息將永遠存在。
(4)sessionStorage生命周期為當前窗口或標簽頁,一旦窗口或標簽頁被永久關(guān)閉了,那么通過sessionStorage中存儲的數(shù)據(jù)也就被清空了。
(5)不同瀏覽器無法共享localStorage或sessionStorage中的信息。相同瀏覽器的不同頁面間可以共享相同的localStorage(頁面屬于相同域名和端口),但是不同頁面或標簽頁間無法共享sessionStorage的信息。
以上所述是小編給大家介紹的在localStorage中存儲對象數(shù)組并讀取的方法,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復(fù)大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!
相關(guān)文章
js代碼運行報錯Warning:To?load?an?ES?module,?set?"type&q
最近在學習ES6的過程中,和運行javascript文件時進行了報錯,下面這篇文章主要給大家介紹了關(guān)于js代碼運行報錯Warning:To?load?an?ES?module,?set?"type":"module"in?the?package.json?or?use?the?.mjs的相關(guān)資料,需要的朋友可以參考下2023-04-04javascript將list轉(zhuǎn)換成樹狀結(jié)構(gòu)的實例
下面小編就為大家?guī)硪黄猨avascript將list轉(zhuǎn)換成樹狀結(jié)構(gòu)的實例。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2017-09-09javascript設(shè)計模式 – 抽象工廠模式原理與應(yīng)用實例分析
這篇文章主要介紹了javascript設(shè)計模式 – 抽象工廠模式,結(jié)合實例形式分析了javascript抽象工廠模式相關(guān)概念、原理、定義、應(yīng)用場景及操作注意事項,需要的朋友可以參考下2020-04-04