【JavaScript】本地存储

在JavaScript中,本地存储是一种可以在浏览器中存储数据的机制。它允许开发者在浏览器中保存键值对,并且这些数据可以在同一个域名下的不同页面间进行共享。

JavaScript中常用的本地存储机制有两种:localStoragesessionStorage

  1. localStorage:
  • localStorage 在整个浏览器窗口关闭后仍然保留数据,因此可以用于持久化存储。

  • localStorage 对象存储的数据没有过期时间,除非手动删除或清除浏览器缓存。

  • 使用示例:

// 存储数据     
localStorage.setItem('key', 'value');    
// 获取数据     
const value = localStorage.getItem('key');     
// 删除数据     
localStorage.removeItem('key');     
// 清除所有数据     
localStorage.clear();     
  1. sessionStorage:
  • sessionStorage 仅在当前会话(当前浏览器标签页或窗口)中保留数据,在关闭会话后数据会被清除。

  • sessionStorage 也使用键值对的形式存储数据,API与 localStorage 类似。

  • 使用示例:

 // 存储数据     sessionStorage.setItem('key', 'value');     // 获取数据     const value = sessionStorage.getItem('key');    // 删除数据     sessionStorage.removeItem('key');     // 清除所有数据     sessionStorage.clear(); 

两种本地存储机制都只能存储字符串类型的数据。

如果要存储其他类型的数据,可以通过 JSON 序列化和反序列化来实现:

// 存储对象
const obj = { key: 'value' };
localStorage.setItem('key', JSON.stringify(obj));
// 获取对象
const storedValue = localStorage.getItem('key');
const obj = JSON.parse(storedValue);

需要注意的是,对于安全性敏感的数据,如用户凭证或个人隐私信息,应避免在本地存储中存储,而应考虑使用服务器端的认证和加密机制来保护数据安全。

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

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

相关文章

如何优化Flask应用程序的性能

让我们来谈谈如何优化Flask应用程序的性能。 首先,让我们了解一下什么是性能。性能就是你在做某件事情时所花费的时间和资源。在计算机科学中,性能通常指的是计算机程序运行的速度和质量。对于Web应用程序,性能通常指的是响应时间和服务器的…

js:浏览器环境下普通模式和严格模式use strict下function函数里的this指向

普通模式 普通模式 this 默认指向了Window function foo() {console.log(this); }foo(); // Window严格模式 如果开启严格模式use strict,this 指向的是 undefined function foo() {"use strict";console.log(this); }foo(); // undefined

STM32 UDS Bootloader开发-上位机篇-CANoe制作(3)

文章目录 前言刷写脚本34服务写入数据的实现定时函数writeBlockData函数Checksum总结前言 上一篇文章中介绍了CAPL刷写脚本的大部分内容,本文继续介绍34,36,37服务的实现,及checksum中遇到的坑 刷写脚本 34服务 void requestDownLoad(struct Block hexfile) {gTxBuffer[…

Linux系统部署Python语言开发运行环境

目录 Ubuntu自带python Debian安装python 安装 pip 库列表 安装第三方库 使用国内镜像站 实装 tkinter 库 编写运行代码 测试代码1 1. 创建项目 2. 创建源码文件 3. 写入源代码 4. 修改权限 5. 运行代码 测试代码2 本文的使用环境是Windows的Linux 子系统&…

ChatGPT: 人机交互的未来

ChatGPT: 人机交互的未来 ChatGPT背景ChatGPT的特点ChatGPT的应用场景结论 ChatGPT ChatGPT是一种基于大数据和机器学习的人工智能聊天机器人模型。它由国内团队发明、开发,并被命名为Mental AI。ChatGPT的目标是通过模拟自然对话的方式,提供高效、智能…

Go学习第六天

Golang变量内置pair结构详细说明 变量包括(type, value)两部分type 包括 static type和concrete type. 简单来说 static type是你在编码是看见的类型(如int、string),concrete type是runtime系统看见的类型类型断言能否成功,取决…

原型模式(C++)

定义 使用原型实例指定创建对象的种类,然后通过拷贝这些原型来创建新的对象。 应用场景 在软件系统中,经常面临着“某些结构复杂的对象”的创建工作;由于需求的变化,这些对象经常面临着剧烈的变化,但是它们却拥有比较稳定一致的…

Julia 元编程

Julia 把自己的代码表示为语言中的数据结构,这样我们就可以编写操纵程序的程序。 元编程也可以简单理解为编写可以生成代码的代码。 元编程(英语:Metaprogramming),是指某类计算机程序的编写,这类计算机程…

Linux磁盘管理

磁盘管理 基本分区管理 磁盘划分思路 进入分区表,新建分区更新分区表格式化分区表挂载使用 #lsblk #df -h 查看设备挂载情况 #fdisk -l 设备分区情况 #fdisk /dev/sdb 添加一块硬盘,需要将其分两个分区,分别格式化成ext4和vfat格式文件系…

Shell脚本学习-for循环结构2

案例:通过脚本实现仅sshd、rsyslog、crond、network、sysstat服务在开机时自启动。 Linux系统在开机的服务通常工作在文本模式3级别,因此只需要查找3级别以上的开启的服务即可。查看命令: chkconfig --list |grep 3:on [rootvm1 ~]# chkco…

安卓camera1设置自动连续对焦

需求 camera 1实现的控制摄像头拍照功能. adb控制自动拍照,发现近点时拍照很模糊,需要自动连续对焦. mCamera.autoFocus(null) 这个接口只能实现单次对焦.不适用. 代码 private Parameters mParameters;p…

TechTool Pro for mac(硬件监测和系统维护工具)

TechTool Pro 是为 Mac OS X 重新设计的全新工具程序,不但保留旧版原有的硬件侦测功能,还可检查系统上其他重要功能,如:网络连接,区域网络等。 TechTool Pro for mac随时监控和保护您的电脑,并可预设定期检…

最新SecureCRT 中文注册版

SecureCRT是一款由VanDyke Software公司开发的终端仿真软件,它提供了类似于Telnet和SSH等协议的远程访问功能。SecureCRT专门为网络管理员、系统管理员和其他需要保密访问网络设备的用户设计。 软件下载:SecureCRT for ma注册版 远程访问:Sec…

MySQL 与MongoDB区别

一、什么是MongoDB呢 ? MongoDB 是由C语言编写的,是一个基于分布式文件存储的开源数据库系统。在高负载的情况下,添加更多的节点,可以保证服务器性能。 MongoDB 旨在为WEB应用提供可扩展的高性能数据存储解决方案。 MongoDB 将数据存储为一…

【PHP代码审计】ctfshow web入门 php特性 93-104

ctfshow web入门 php特性 93-104 web 93web 94web 95web 96web 97web 98web 99web 100web 101web 102web 103web 104 web 93 这段PHP代码是一个简单的源码审计例子,让我们逐步分析它: include("flag.php");: 这行代码将flag.php文件包含进来。…

【机器学习】西瓜书学习心得及课后习题参考答案—第6章支持向量机

笔记心得 6.1 间隔与支持向量—— w w w是法向量,垂直与超平面 w T x b 0 w^Txb0 wTxb0。这一节了解了支持向量机的基本型。 min ⁡ w , b 1 2 ∣ ∣ w ∣ ∣ 2 s . t . y i ( w T x i b ) ≥ 1 , i 1 , 2 , . . . , m . \min_{w,b} \frac{1}{2}||w||^2 \\ s.…

如何建立含有逻辑删除字段的唯一索引

业务场景 在实际工作当中,遇到一个场景,就是在用户注册时,名字要全局唯一,当然,我们是可以对用户进行删除的,你会怎么去做? 分析 一般来说,我们可以在用户注册请求时&#xff0c…

习题1.27

先写代码 (defn square [x] (* x x)) (defn expmod[base exp m](cond ( exp 0) 1(even? exp) (mod (square (expmod base (/ exp 2) m)) m):else (mod (* base (expmod base (- exp 1) m)) m)))(defn fermat-test[n](defn try-it [a](cond ( a n) (println "test end&qu…

极狐GitLab 全新「价值流仪表盘」使用指南

本文来源:about.gitlab.com 作者:Haim Snir 译者:极狐(GitLab) 市场部内容团队 GitLab / 极狐GitLab 价值流仪表盘的使用相对简单,这种可以定制化的仪表盘能够让决策者识别数字化转型进程中的趋势及机遇。 如果你已经在用 GitLab…

Android学习之路(1) App工程的项目结构

一、App工程的项目结构 1.项目下面有两个分类 一个是app(代表app模块),另一个是Gradle Scripts。其中app下面又有3个子目录,其功能说明如下: manifests 子目录下面只有一个XML文件,即AndroidManifest.xmljava子目录,…