【学习笔记38】JavaScript中的本地存储

news/2024/5/20 1:55:03/文章来源:https://blog.csdn.net/m0_58190023/article/details/128058912

一、localStorage

  • 浏览器的本地存储(永久存储), 打开浏览器存储上之后, 关闭浏览器, 信息还在
  • 语法:window.localStorage.setItem(key, value)
  • 注意: value的值必须为字符串
  • key的书写符合见名知意
        window.localStorage.setItem('ceshi1', '1111111');window.localStorage.setItem('ceshi2', '2222222');window.localStorage.setItem('ceshi3', '3333333');window.localStorage.setItem('ceshi4', '4444444');window.localStorage.setItem('ceshi5', '5555555');

在这里插入图片描述

1、删除语法

  • 语法:window.localStorage.removeItem(key);
        window.localStorage.removeItem('ceshi1');

2、清除语法

  • 语法:window.localStorage.clear();
        window.localStorage.clear();

3、获取语法

  • 语法:window.localStorage.getItem(key)
        console.log(window.localStorage.getItem('ceshi3'));

二、sessionStorage

  • 浏览器的临时存储
  • 特点: 页面关闭, 直接清除数据

1、设置语法

  • 语法:window.sessionStorage.setItem(key, value)
  • value的值必须为字符串
        window.sessionStorage.setItem('VX', '666@@@');

在这里插入图片描述

2、获取语法

        console.log(window.sessionStorage.getItem('VX'));   // 666@@@

3、删除语法

          window.sessionStorage.removeItem('VX');

4、清除语法

          window.sessionStorage.clear();

5、JSON的两个方法

  • JSON.stringify( )将其他类型的数据, 转为字符串格式
  • JSON.parse( ) 将字符串的数据类型还原
        // JSON的两个方法 var obj = [1, 2, 3, 4, 5];// 1. JSON.stringify()  将其他类型的数据, 转为字符串格式window.sessionStorage.setItem('OBJ', JSON.stringify(obj));// 2. JSON.parse() 将字符串的数据类型还原var newObj = JSON.parse(window.sessionStorage.getItem('OBJ')); console.log(newObj)

三、cookie

  • cookie只能在用服务器启动的页面中正常使用
  • 解决: vscode安装Live Server插件
  • 语法: document.cookie = 'key=value'

1、设置一条cookie

        document.cookie = 'QQ=12345';

在这里插入图片描述

2、设置多条cookie

        document.cookie = 'QQ=123456789';document.cookie = 'pwd=987654321';

3、设置一条带有过期时间的cookie

        /***  不管你设置的是那个时区的时间, (我们是东八区)**  它都会按照世界标准时间去设置**  如果我们想要设置一个过期时间的话, 需要先往后调整8小时; 然后加上你需要的过期时间*/
        var timer = new Date();document.cookie = 'VX=123456789;expires=' + timer;

在这里插入图片描述

4、案例

需求: 我需要设置一条30秒后过期的cookie

  1. 获取当前时间
  2. 将当前时间往后调整8小时
  3. 把调整后的时间,加上我们设置的过期时间
        document.cookie = 'QQ=123456789';document.cookie = 'pwd=987654321';// 设置30秒var timer = new Date();timer.setTime(timer.getTime() - 1000 * 60 * 60 * 8 + 1000 * 30);document.cookie = 'VX=6666;expires=' + timer;// 获取 cookieconsole.log(document.cookie);

在这里插入图片描述

四、cookie和storage的区别

1、出现时间

  1. cookie:有JS的时候就有了
  2. storage:有H5以后才有的

2、存储大小

  1. cookie:4kb
  2. storage:20MB

3、前后端交互(前端向后端发送请求)

  1. cookie:交互时请求默认携带cookie
  2. storage:交互式请求不会携带,除非前端人员配置传递

4、前后端操作

  1. cookie:不管前后端语言都可以操作
  2. storage:只能有前端语言来操作(JS)

5、过期时间

  1. cookie:默认会话级,页面关闭,存储消失;可以通过手动配置
  2. storage:不能通过手动配置

五、localStorage和sessionStorage的区别

  • 过期时间
  1. Localstorage:永久存储,除非手动清理
  2. sessionstorage:会话级别,关闭页面,存储就失效

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.luyixian.cn/news_show_226287.aspx

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

制霸GitHub热榜的Spring Cloud Alibaba源码笔记,果然是阿里传出的

7年前面试最常问的并且可以顺利拿到高薪的技能是 Dubbo 3年前面试,只要你简历上有Spring Cloud 项目的相关经验,肯定会打动面试官,现在呢?恐怕简历上有Dubbo和简单的Spring Cloud技术和经验是无法让面试官高看你的。 Spring Cloud Alibaba 近几年在受到国内不少开…

深度学习与总结JVM专辑(三):垃圾回收器—G1(图文+代码)

垃圾收集器G1前言概述停顿时间模型内存布局传统内存布局过时了G1实现的几个关键细节问题铺垫知识:跨代引用铺垫知识:记忆集,卡表,卡页铺垫知识:写屏障插眼往下看G1内存模型分区Region卡片Card堆Heap分代模型分代垃圾收…

TensorRT--学习笔记

官方文档是最权威的TensorRT是可以在NVIDIA各种GPU硬件平台下运行的一个C推理框架。利用Pytorch、TF或者其他框架训练好的模型,可以转化为TensorRT的格式,然后利用TensorRT推理引擎去运行我们这个模型,从而提升这个模型在英伟达GPU上运行的速…

这可能是最权威、最全面的Go语言编码风格规范了!

每种编程语言除了固定的语法之外,都会有属于自己的地道的(idiomatic)写法。其实,自然语言也不例外,你想,你用心想想是不是这样。语言的设计者们希望开发人员都能编写统一风格的地道的代码,这样不仅代码可读性好&#x…

Packet Tracer 实验 - 排除多区域 OSPFv3 故障

地址分配表 设备 接口 IPv6 全局单播地址 IPv6 本地链路地址 默认网关 ISP GigabitEthernet0/0 2001:DB8:C1:1::1/64 FE80::C1 不适用 ASBR GigabitEthernet0/0 2001:DB8:C1:1::2/64 FE80::7 不适用 Serial0/0/0 2001:DB8:A8EA:F0A::1 FE80::7 不适用 S…

JSP学习日记

JSP简述 Java Sever Pages----->Java服务器界面 用于前后端结合 jsp为什么淘汰? 由于JSP的前后端耦合性极高,编写代码非常臃肿。前后端的代码放在一起,所以JSP可以看成是已经被淘汰的技术。 为什么还要学jsp? 由于一些公司…

基于遗传算法的自主式水下潜器路径规划问题附Matlab代码

✅作者简介:热爱科研的Matlab仿真开发者,修心和技术同步精进,matlab项目合作可私信。 🍎个人主页:Matlab科研工作室 🍊个人信条:格物致知。 更多Matlab仿真内容点击👇 智能优化算法 …

MFC编辑框控件属性和用法

目录 一、编辑框的属性 1.want return 2.Multiline 3.滚动条 4.添加完效果 二、初始化编辑框内容 三、复制与退出 四、edit control的值类型 五、思维拓展 一、编辑框的属性 默认情况下编辑框edit control 是可以横向无限输入的 1.want return 支持换行,…

自动化项目倍加福测距仪QSM WCS RS485 与西门子S7 200通信

1、程序流程图 2、WCS位置数据处理流程 第一步:设置S7-200的RS485的通讯波特率19.2kbps,通讯格式(8,1,E); 第二步:PLC向WCS发送请求码: A0A1为0,表示读码器地…

《人月神话》(The Mythical Man-Month)1 看清问题的本质:如果我们想解决问题,就必须试图先去理解它...

第一章 焦油坑(The Tar Pit)史前史中,没有比巨兽在焦油坑中垂死挣扎的场面更令人震撼的了。上帝见证着恐龙、猛犸象、剑齿虎在焦油中挣扎。它们挣扎得越是猛烈,焦油纠缠得越紧,没有任何猛兽足够强壮或具有足够的技巧&a…

【C++数据结构】程序性能分析

程序性能分析 2.1 什么是程序性能 程序性能:所谓程序性能(performance of a program)是指运行这个程序所需要的内存和时间的多少。 性能分析:在性能分析(performance analysis)时,采用分析方…

基于粒子群算法的配电网重构研究matlab程序

基于粒子群算法的配电网重构研究matlab程序 参考文献:基于改进灰狼算法的含分布式电源配电网重构研究 (本文未考虑分布式电源) 摘要:使用基本环矩阵编码的智能优化算法在处理配电网重构问题中,通常使用无序的解空间&a…

玩链子游戏

一 游戏描述 有一条链子,上面有 n 颗钻石,钻石编号为 1~n 。可以对该链子执行两种操作: ① CUT a b c (区间切割操作) 切下从第 a 颗钻石到第 b 颗钻石的链子,把它插在剩余链子的第 c 颗钻石…

Pytorch中CrossEntropyLoss()详解

一、损失函数 nn.CrossEntropyLoss() 交叉熵损失函数 nn.CrossEntropyLoss() ,结合了 nn.LogSoftmax() 和 nn.NLLLoss() 两个函数。 它在做分类(具体几类)训练的时候是非常有用的。 二. 什么是交叉熵 交叉熵主要是用来判定实际的输出与期望…

水泥行业工业互联网平台(CCPS)解决方案

水泥行业经过过去十年的发展和调整,基本实现了集团化。集团管控当前面临的主要问题是数字的分散化和碎片化,建设工业互联网是新时期加强集团管控的必经之路。 CCPS平台优势 1.融合SOA理念的架构平台和系统框架。具有跨平台、易维护、可集成、可扩展、分…

【图像处理】基于图像聚类的无监督图像排序问题(Matlab代码实现)

👨‍🎓个人主页:研学社的博客 💥💥💞💞欢迎来到本博客❤️❤️💥💥 🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜…

遥感技术及高分遥感影像在地震中的应用及高分二号获取

长期以来,地震预报监测、灾害调查、灾情信息获取主要依靠实地勘测手段,其获取的数据精度和置信度虽然较高,但存在工作量大、效率低、费用高和信息不直观等缺点。遥感技术手段可在一定程度上克服传统实地勘测手段的缺点,并具有其他…

BUUCTF Misc ningen1 小明的保险箱1 爱因斯坦1 easycap1

ningen1 下载文件 使用kali中的binwalk查看 binwalk xxx.jpg 分离文件 打开 压缩包加密了,爆破 爆破成功,密码:8368 得到flag flag{b025fc9ca797a67d2103bfbc407a6d5f} 小明的保险箱1 下载文件 用010 editor打开 可以看到图…

Springboot——Controller层开发、请求与响应、RESTful开发规范

目录 一、入门案例(小了解,没啥用) 1.1 创建Springboot工程 1.2 导入maven坐标 1.3 controller层代码 1.4 postman测试 二、 REST常用注解 2.1 Controller 2.2 RequestMapping(请求映射路径) 2.3 Response…

UE5笔记【十】第一个蓝图项目:bluePrint。

我们将上升的斜坡或者楼梯隐藏,往下移动,使其隐藏在地面以下。然后将方块也向下移动,漏出一点来。我们要模拟的场景是:当人移动到蓝色方块上时,踩在方块上,上升的楼梯升起来。然后人可以上楼。 将蓝色方块…