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

 更新时间:2016年09月24日 09:24:34   作者:YvetteLau  
频繁ajax请求导致页面响应变慢,所以考虑将数据存储在window.storage中,这样只需请求一次ajax,接下来通过本文给大家介绍了在localStorage中存储对象数组并读取的方法,需要的朋友可以参考下

频繁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的信息。

以上所述是小编给大家介绍的在localStorage中存储对象数组并读取的方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!

相关文章

  • canvas实现图像布局填充功能

    canvas实现图像布局填充功能

    这篇文章主要为大家详细介绍了canvas实现图像布局填充功能,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-02-02
  • 快速排序 php与javascript的不同之处

    快速排序 php与javascript的不同之处

    告诉你一个排序算法,也许是最重要的是他们知道 - 快速排序,无论是在PHP和JavaScript实现的。虽然这两种语言之间的代码看起来相似,也有一些差异,这表明了语法知识的重要性!
    2011-02-02
  • 2种简单的js倒计时方式

    2种简单的js倒计时方式

    这篇文章主要为大家详细介绍了2个简单js倒计时方式,一是带天数的倒计时,二是单纯分钟和秒倒计时,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-10-10
  • ES6 Class中实现私有属性的一些方法总结

    ES6 Class中实现私有属性的一些方法总结

    这篇文章主要给大家介绍了关于ES6 Class中实现私有属性的一些方法,文中通过示例代码介绍的非常详细,对大家学习或者使用ES6具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
    2019-07-07
  • js控件Kindeditor实现图片自动上传功能

    js控件Kindeditor实现图片自动上传功能

    这篇文章主要为大家详细介绍了js控件Kindeditor实现图片自动上传功能的相关资料,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2016-06-06
  • javaScript删除对象属性的几种方法总结

    javaScript删除对象属性的几种方法总结

    这篇文章主要给大家介绍了关于javaScript删除对象属性的几种方法的相关资料,它们在不同场景下有不同的应用,需要根据实际情况选择最合适的删除方法,文中通过实例代码介绍的非常详细,下面需要的朋友可以参考下
    2023-06-06
  • JS弹出层单纯的绝对定位居中示例代码

    JS弹出层单纯的绝对定位居中示例代码

    这篇文章主要介绍了JS弹出层的绝对定位居中是如何实现的,需要的朋友可以参考下
    2014-02-02
  • 利用js实现Ajax并发请求限制请求数量的示例代码

    利用js实现Ajax并发请求限制请求数量的示例代码

    这篇文章主要介绍了利用js实现Ajax并发请求限制请求数量的示例代码,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-04-04
  • three.js中文文档学习之通过模块导入

    three.js中文文档学习之通过模块导入

    这篇文章主要给大家介绍了关于three.js中文文档学习之通过模块导入的相关资料,文中通过示例代码介绍的非常详细,对大家学习或使用three.js具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧。
    2017-11-11
  • 微信小程序左右滚动公告栏效果代码实例

    微信小程序左右滚动公告栏效果代码实例

    这篇文章主要介绍了微信小程序左右滚动公告栏效果代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-09-09

最新评论