码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • localStorage


    localStoragelocalStorage可以将第一次请求的数据直接存储到本地,解决了cookie存储空间不足的问题(cookie中每条cookie的存储空间为4k),localStorage中一般浏览器支持的是5M大小(不同的浏览器有所不同)。

    localStorage的局限

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

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

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

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

    5、localStorage不能被爬虫抓取到

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

    localStorage生命周期是永久
    sessionStorage生命周期为当前窗口或标签页,一旦窗口或标签页被永久关闭了,那么所有通过sessionStorage存储的数据也就被清空了

    1. //判断浏览器是否支持
    2. if(!window.localStorage){
    3. alert("浏览器不支持localstorage");
    4. return false;
    5. }else{
    6. //主逻辑业务
    7. var storage=window.localStorage;
    8. //写入a字段
    9. storage["a"]=1;
    10. //写入b字段
    11. storage.b=2;
    12. //写入c字段
    13. storage.setItem("c",3);
    14. console.log(typeof storage["a"]);
    15. console.log(typeof storage["b"]);
    16. console.log(typeof storage["c"]);//打印出来的都是string类型
    17. }

    官方推荐的是getItem\setItem这两种方法对其进行存取

    1. var storage=window.localStorage;
    2. //增
    3. storage["a"]=1;
    4. storage.b=2;
    5. storage.setItem("c",3);
    6. //删
    7. storage.clear();//删除所有内容
    8. storage.removeItem("a");//删除某个键值对
    9. //改
    10. storage.a=4;
    11. //查
    12. for(var i=0;i<storage.length;i++){
    13. var key=storage.key(i);
    14. console.log(key);
    15. }

    JSON存入localStorage中,但是在localStorage会自动将localStorage转换成为字符串形式,可以使用JSON.stringify()这个方法,来将JSON转换成为JSON字符串

    1. var data={
    2. name:'xiecanyong',
    3. sex:'man',
    4. hobby:'program'
    5. };
    6. //将JSON对象转换成为字符串
    7. var d=JSON.stringify(data);
    8. storage.setItem("data",d);
    9. //将字符串转换成为JSON对象
    10. var json=storage.getItem("data");
    11. var jsonObj=JSON.parse(json);
  • 相关阅读:
    JavaScript 条件判断语句以及示例和详细代码解释为什么这样写(1)
    MVC和Filter
    扫地机器人地图与用户终端的同步
    python类的构造函数__init__方法
    【数据库】数据库中的检查点Checkpoint,数据落盘的重要时刻
    【2022河南萌新联赛第(四)场:郑州轻工业大学】【部分思路题解+代码解析】
    jenkins持续集成、持续交付配置,以及对应Gitlab配置
    AutoJs学习-跳一跳相关代码
    华为机试真题实战应用【算法代码篇】-字符串消除(附Java、python和C++代码)
    AI智能语音机器人开源源码系统二次开发各版本部署
  • 原文地址:https://blog.csdn.net/m0_52191385/article/details/134528681
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号