【html】localStorage设置和获取局部存储的值

背景

开发项目时,前端与后端的接口联调,在一个function()中接收到后端接口的值,经过一些处理后,需要将处理后的该值传到另一个function()中复用。

如何解决

第一个function()中设置局部存储:

javascript 复制代码
$(function () {
    // 一些其他处理 省略...
    localStorage.setItem("userName",root:$('#userName')).val());
});

第二个function()中获取局部存储的值:

javascript 复制代码
$(function () {
    // 一些其他处理 省略...
    var userName = localStorage.getItem("userName"); // 获取到的就是上面设置的 userName 值
    console.log(username); // 输出: root:JohnDoe
});

(同样适用于多个html之间的function()存储和获取数据)

介绍一下localStorage

localStorage 是 Web 存储 API 的一部分,允许开发者保存键值对数据在用户的浏览器中,即使关闭浏览器窗口后数据依然存在,除非用户手动清除浏览器缓存或数据。适用于:需要在多个页面或会话之间持久存储数据的应用程序。

如何使用localStorage

  1. 存储数据

使用 localStorage.setItem(key, value); 方法存储数据,其中 key 是存储项的名称, value 是要存储的数据。数据通常以字符串形式存储。

  1. 获取数据

使用 localStorage.getItem(key); 方法获取存储的数据,将返回与指定 key 相关联的值,如果该键不存在,则返回 null

  1. 删除数据

使用 localStorage.removeItem(key); 方法删除指定 key 的数据项。

  1. 清除所有数据

使用 localStorage.clear(); 方法清除 localStorage 中的所有数据。

注意点

  1. localStorage 只能存储字符串类型的数据。如果需要存储对象或者数组,需要先将其转换为 JSON 字符串。例如,使用 JSON.stringify() 来转换对象或数组为字符串,使用 JSON.parse() 来将字符串转换回对象或数组。
jQuery 复制代码
var user = { name: 'JohnDoe', age: 30 };
localStorage.setItem('user', JSON.stringify(user)); // 存储对象为字符串
var storedUser = JSON.parse(localStorage.getItem('user')); // 获取并转换回对象
console.log(storedUser.name); // 输出: JohnDoe
  1. 兼容性:虽然现代浏览器都支持 localStorage,但在某些旧版浏览器中可能不可用。可以通过检查 localStorage 在全局对象中的存在性来确保兼容性:if ('localStorage' in window)。如果不可用,可以考虑使用其他存储机制如 cookiessessionStorage
相关推荐
爱问问题的小李15 分钟前
ue 动态 Key 导致组件无限重置与 API 重复提交
前端·javascript·vue.js
子兮曰22 分钟前
深入Vue 3响应式系统:为什么嵌套对象修改后界面不更新?
前端·javascript·vue.js
CHU72903525 分钟前
直播商城APP前端功能全景解析:打造沉浸式互动购物新体验
java·前端·小程序
枫叶丹426 分钟前
【Qt开发】Qt界面优化(一)-> Qt样式表(QSS) 背景介绍
开发语言·前端·qt·系统架构
子兮曰7 小时前
OpenClaw入门:从零开始搭建你的私有化AI助手
前端·架构·github
吴仰晖7 小时前
使用github copliot chat的源码学习之Chromium Compositor
前端
1024小神7 小时前
github发布pages的几种状态记录
前端
不像程序员的程序媛9 小时前
Nginx日志切分
服务器·前端·nginx
北原_春希9 小时前
如何在Vue3项目中引入并使用Echarts图表
前端·javascript·echarts
尽意啊9 小时前
echarts树图动态添加子节点
前端·javascript·echarts