全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

本地存储localStorage用法详解

一、什么是localStorage?

在HTML5中,新加入了一个localStorage特性,这个特性主要是用来作为本地存储来使用的,解决了cookie存储空间不足的问题(cookie中每条cookie的存储空间为4k),localStorage中一般浏览器支持的是5M大小,这个在不同的浏览器中localStorage会有所不同。

二、localStorage的优势与局限

localStorage的优势

1、localStorage拓展了cookie的4K限制

2、localStorage会可以将第一次请求的数据直接存储到本地,这个相当于一个5M大小的针对于前端页面的数据库,相比于cookie可以节约带宽,但是这个却是只有在高版本的浏览器中才支持的

localStorage的局限

1、浏览器的大小不统一,并且在IE8以上的IE版本才支持localStorage这个属性

2、目前所有的浏览器中都会把localStorage的值类型限定为string类型,这个在对我们日常比较常见的JSON对象类型需要一些转换

3、localStorage在浏览器的隐私模式下面是不可读取的

4、localStorage本质上是对字符串的读取,如果存储内容多的话会消耗内存空间,会导致页面变卡

5、localStorage不能被爬虫抓取到

localStorage与sessionStorage的唯一一点区别就是localStorage属于永久性存储,而sessionStorage属于当会话结束的时候,sessionStorage中的键值对会被清空。

三、localStorage的使用

清空localStorage

localStorage.clear()  // undefined   
 localStorage      //Storage {length: 0} 存储数据

存储数据

localStorage.setItem("name","caibin") //存储名字为name值为caibin的变量
localStorage.name = "caibin"; // 等价于上面的命令 
localStorage // Storage{name: "caibin", length: 1} 读取数据

读取数据

localStorage.getItem("name") //caibin,读取保存在localStorage对象里名为name的变量的值
localStorage.name // "caibin"
localStorage.valueOf() //读取存储在localStorage上的所有数据
localStorage.key(0) // 读取第一条数据的变量名(键值)
//遍历并输出localStorage里存储的名字和值
for(var i=0; i<localStorage.length;i++){
  console.log('localStorage里存储的第'+i+'条数据的名字为:'+localStorage.key(i)+',值为:'+localStorage.getItem(localStorage.key(i)));
}

删除某个变量

localStorage.removeItem("name"); //undefined
localStorage // Storage {length: 0} 可以看到之前保存的name变量已经从localStorage里删除了

检查localStorage里是否保存某个变量

// 这些数据都是测试的,是在我当下环境里的,只是demo哦~
localStorage.hasOwnProperty('name') // true
localStorage.hasOwnProperty('sex') // false

将数组转为本地字符串

var arr = ['aa','bb','cc']; // ["aa","bb","cc"]
localStorage.arr = arr //["aa","bb","cc"]
localStorage.arr.toLocaleString(); // "aa,bb,cc"

将JSON存储到localStorage里

var students = {
  xiaomin: {
    name: "xiaoming",
    grade: 1
  },
  teemo: {
    name: "teemo",
    grade: 3
  }
}

students = JSON.stringify(students); //将JSON转为字符串存到变量里
console.log(students);
localStorage.setItem("students",students);//将变量存到localStorage里

var newStudents = localStorage.getItem("students");
newStudents = JSON.parse(students); //转为JSON
console.log(newStudents); // 打印出原先对象

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。


# 本地存储  # localStorage  # 细数localStorage的用法及使用注意事项  # vue中LocalStorage与SessionStorage的区别与用法  # jQuery访问浏览器本地存储cookie、localStorage和sessionStorage的  # Vue中localStorage的用法和监听localStorage值的变化  # 值为  # 键值  # 清空  # 的是  # 都是  # 是在  # 却是  # 遍历  # 有所不同  # 可以看到  # 我当  # 在对  # 会把  # 唯一一  # 中都  # 每条  # 本质上  # 大家多多  # 主要是  # 中才 


相关文章: 网站建设设计制作营销公司南阳,如何策划设计和建设网站?  香港服务器网站生成指南:免费资源整合与高速稳定配置方案  如何做静态网页,sublimetext3.0制作静态网页?  云南网站制作公司有哪些,云南最好的招聘网站是哪个?  定制建站哪家更专业可靠?推荐榜单揭晓  建站主机类型有哪些?如何正确选型  教程网站设计制作软件,怎么创建自己的一个网站?  如何制作新型网站程序文件,新型止水鱼鳞网要拆除吗?  如何确保西部建站助手FTP传输的安全性?  建站三合一如何选?哪家性价比更高?  网站制作说明怎么写,简述网页设计的流程并说明原因?  成都品牌网站制作公司,成都营业执照年报网上怎么办理?  如何快速登录WAP自助建站平台?  网站制作壁纸教程视频,电脑壁纸网站?  建站之星免费模板:自助建站系统与智能响应式一键生成  免费ppt制作网站,有没有值得推荐的免费PPT网站?  Java解压缩zip - 解压缩多个文件或文件夹实例  简易网站制作视频教程,使用记事本编写一个简单的网页html文件?  新网站制作渠道有哪些,跪求一个无线渠道比较强的小说网站,我要发表小说?  常州企业建站如何选择最佳模板?  道歉网站制作流程,世纪佳缘致歉小吴事件,相亲网站身份信息伪造该如何稽查?  北京企业网站设计制作公司,北京铁路集团官方网站?  智能起名网站制作软件有哪些,制作logo的软件?  网站制作报价单模板图片,小松挖机官方网站报价?  建站之星安装需要哪些步骤及注意事项?  青浦网站制作公司有哪些,苹果官网发货地是哪里?  建站之星2.7模板:企业网站建设与h5定制设计专题  如何批量查询域名的建站时间记录?  寿县云建站:智能SEO优化与多行业模板快速上线指南  家具网站制作软件,家具厂怎么跑业务?  建站之星ASP如何实现CMS高效搭建与安全管理?  制作旅游网站html,怎样注册旅游网站?  建站之星如何快速更换网站模板?  建站之星如何开启自定义404页面避免用户流失?  如何破解联通资金短缺导致的基站建设难题?  成都网站制作报价公司,成都工业用气开户费用?  宝华建站服务条款解析:五站合一功能与SEO优化设置指南  建站VPS选购需注意哪些关键参数?  岳西云建站教程与模板下载_一站式快速建站系统操作指南  小型网站建站如何选择虚拟主机?  Swift中swift中的switch 语句  如何在阿里云香港服务器快速搭建网站?  大连网站设计制作招聘信息,大连投诉网站有哪些?  c++怎么实现高并发下的无锁队列_c++ std::atomic原子变量与CAS操作【详解】  如何在新浪SAE免费搭建个人博客?  如何高效完成独享虚拟主机建站?  美食网站链接制作教程视频,哪个教做美食的网站比较专业点?  常州自助建站费用包含哪些项目?  厦门模型网站设计制作公司,厦门航空飞机模型掉色怎么办?  如何快速查询网站的真实建站时间? 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。