一、什么是localStroage、sessionStroage

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

二、localStroage的优势与局限

LocalStroage的优势

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

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

LocalStroage的局限

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

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

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

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

5、localStorage不能被爬虫抓取到

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

这里要特别声明一下,如果是使用IE浏览器的话,那么就要UserData来作为存储,这里主要详解的是localStroage的内容,所以userData不做过多的解释,而且以博主个人的看法,也是没有必要去学习UserData的使用来的,因为目前的IE6/IE7属于淘汰的位置上,而且在如今的很多页面开发都会涉及到HTML5\CSS3等新兴的技术,所以在使用上面一般我们不会去对其进行兼容

首先在使用localStroage的时候要判断一下,浏览器是否支持localStroage这个属性

if (! window.loadStroage){

alert("浏览器不支持localStroage");

return false;

}else {

//主逻辑业务

}

localStroage的写入,LocalStroage的写入有三种方法:

第一种:

运行后的结果如下

这里要特别说明一下localStorage的使用也是遵循同源策略的,所以不同的网站直接是不能共用相同的localStorage

最后在控制台上面打印出来的结果是:

string

string

string

不知道各位有没有注意到,刚刚存储进去的是int类型,但是打印出来的确是string类型,这个与localStroage本身的特点有关,LocalStroage只支持string类型的存储。

localStroage的读取

这里是三种对localStroage的读取,其中官方推荐的是getItem/setItem这两种方法对其进行存取,不要问为什么,我也不知道

我之前说过localStorage就是相当于一个前端的数据库的东西,数据库主要是增删查改这四个步骤,这里的读取和写入就相当于增、查的这两个步骤

下面我们就来说一说localStorage的删、改这两个步骤

改这个步骤比较好理解,思路跟重新更改全局变量的值一样,这里我们就以一个为例来简单的说明一下

作者:宁宁nn
链接:https://www.jianshu.com/p/8caa0ee65806
来源:简书
简书著作权归作者所有,任何形式的转载都请联系作者获得授权并注明出处。

localStroage相关推荐

  1. 工作372-cookie和sessionstroage以及localstroage区别

  2. html5 本地批量存储,HTML5本地存储

    什么是HTML5存储? 简单地说,它是一种让web页面在浏览器端本地化存储键值对的方式.跟cookies一样,即使你从网站导航到别的网站,关掉了浏览器的tab页,退出了浏览器,数据依然存在:与cook ...

  3. Java 最常见的 10000+ 面试题及答案整理:持续更新

    Java面试题以及答案整理[最新版]Java高级面试题大全(2021版),发现网上很多Java面试题都没有答案,所以花了很长时间搜集,本套Java面试题大全,汇总了大量经典的Java程序员面试题以及答 ...

  4. 7000 字读懂互联网公司的架构演变历程

    点击上方"视学算法",选择"设为星标" 做积极的人,而不是积极废人! 来源:小M cnblogs.com/xiaoMzjm/p/5223799.html 前言 ...

  5. 电子商务网站是这样诞生的

    来自:cnblogs.com/xiaoMzjm 前言 我们以javaweb为例,来搭建一个简单的电商系统,看看这个系统可以如何一步步演变. 该系统具备的功能: 用户模块:用户注册和管理 商品模块:商品 ...

  6. cookie、session以及token的定义、区别、使用环境

    Cookie Cookie 的工作原理 由于 HTTP 是一种无状态的协议,服务器单从网络连接上无从知道客户身份.怎么办呢?就给客户端们颁发一个通行证吧,每人一个,无论谁访问都必须携带自己通行证,这样 ...

  7. 前端基础面试题大全-极乐科技(一)-JS部分

    2019独角兽企业重金招聘Python工程师标准>>> #JS部分 ###1.几种基本数据类型?复杂数据类型?值类型和引用数据类型?堆栈数据结构? 基本数据类型:Undefined. ...

  8. HTML5--sessionStorage、localStorage、manifest

    HTML5--sessionStorage.localStorage.manifest sessionStroage: <!DOCTYPE html> <html lang=&quo ...

  9. 阿里P9架构师讲解从单机至亿级流量大型网站系统架构的演进过程

    阶段一.单机构建网站 网站的初期,我们经常会在单机上跑我们所有的程序和软件.此时我们使用一个容器,如tomcat.jetty.jboos,然后直接使用JSP/servlet技术,或者使用一些开源的框架 ...

最新文章

  1. Java调用ocx控件以及dll
  2. C++11中正則表達式測试
  3. 信号传递的时机与顺序
  4. linux离线安装python3 devel_linux离线安装python3
  5. Kotlin学习笔记30 补充 作用域函数
  6. 为什么说微服务一定要有 API 网关?
  7. count是java关键字吗_countinue关键字和break关键字与java基本格式
  8. Thinkphp3.2+ 微信小程序图片上传
  9. matlab改进遗传算法求解带时间窗的路径优化问题
  10. 手机扫码枪app,手机扫码,内容上电脑表格
  11. 与VX msn 聊天记录
  12. win7计算机远程桌面连接,Win 7连向Win7系统远程桌面连接设置
  13. tcp state linux,Linux Kernel ‘tcp_rcv_state_process()’函数拒绝服务漏洞
  14. 便利店牵手京东到家,多元零售矩阵走向成熟化
  15. 罗技c270摄像头支持linux,电信局点使用罗技C270摄像头调试指导
  16. 在谷歌地图上显示您的位置
  17. 蟋蟀蝙蝠的全球与中国市场2022-2028年:技术、参与者、趋势、市场规模及占有率研究报告
  18. 大数据征信如何提升金融机构风控能力
  19. 【OpenPose-Windows】OpenPose1.4.0+VS2017+CUDA9.2+cuDNN9.2+Windows配置教程
  20. 《Hyperledger Fabric官方文档》区块链的网络

热门文章

  1. 《中国5G经济报告2020》正式发布
  2. 原神服务器维护后抽奖池会更新吗,原神抽奖池更新后保底会重置吗
  3. MainWindow菜单栏和工具栏设置
  4. 母亲节:向世界上最伟大的母爱致敬
  5. ros机器人编程实践(15.2)- 使用科大讯飞语音控制turtlebot导航
  6. 牛客网笔试题 (经常更新)
  7. 常州SEO姜东:百度资源平台站点验证图文怎么做?
  8. 编译FCL时报错:/usr/local/lib/libccd.a: 无法添加符号: 错误的值
  9. linux文件系统卷标管理
  10. STM32F103学习笔记(4)——LCD段码屏HT1621使用