加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

在localStorage中存储对象数组并读取

发布时间:2020-12-16 01:28:50 所属栏目:百科 来源:网络整理
导读:频繁ajax请求导致页面响应变慢。 于是考虑将数据存储在window.storage中,这样只请求一次ajax,而不需要频繁请求。 鉴于localstorage中只能存储字符串,所以我们要借助于JSON.stringify()和JSON.parse(); $.ajax({ type: "get" ,async: "true" ,url: "" ,dat

频繁ajax请求导致页面响应变慢。
于是考虑将数据存储在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是外部定义的数组 storage = []
        }
    },error: function(){
    }
});

现在,我们将data存储在了storage中,当我们需要使用时:

fucntion getData(){
    window.localStorage.job = JSON.stringify(storage); //将storage转变为字符串存储
    var job = JSON.parse(window.localStorage.job);
    for(var i = 0; i < job.length; i++){
        job[i] = JSON.parse(job[i]);
    }
    //此时job中存储的就是对象数组了
}

本地存储外,除了localStorage,还有sessionStorage. (1)localStorage和sessionStorage都是用来存储客户端临时信息的对象。 (2)localStorage和sessionStorage都只能存储字符串类型的对象 (3)localStorage生命周期是永久,除非用户手动清除localStorage信息,否则这些信息将永远存在。 (4)sessionStorage生命周期为当前窗口或标签页,一旦窗口或标签页被永久关闭了,那么通过sessionStorage中存储的数据也就被清空了。 (5)不同浏览器无法共享localStorage或sessionStorage中的信息。相同浏览器的不同页面间可以共享相同的localStorage(页面属于相同域名和端口),但是不同页面或标签页间无法共享sessionStorage的信息。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读