网站首页 > 技术文章 正文
前端开发如何把配置信息存储到本地?这是切图网qietu.com在做的一个前端项目中遇到的,需要用到的是js的存储方法localStorage,它主要是用来作为本地存储来使用的,解决了cookie存储空间不足的问题,localStorage的数据是持久存储在用户的硬盘上的,而不是内存,在数据存储方便比session和cookie要更加好用。
现在前端做数据存储,跨页面传值,localStorage是一个很好的方式,以键值对的方式存储,也方便取值赋值。使用getItem()方法可以访问到存在浏览器 localStorage 中的数据对象,它以 key 作为参数,并且返回与 key 相对应的 value。
结合到实际项目中效果不错,附代码:
var jsonArray = [{
"id":"sys-xmbh",
"show":true,
"isSys":true
}
,{
"id":"sys-xmmc",
"show":true,
"isSys":true
}
];
/*=====js 如果有本地存储就调取本地存储 没有 就调取一段默认json=====*/
function getData(){
// 本地存储的键名
var storageKey = "myData";
// 尝试从本地存储中获取数据
var storedData = localStorage.getItem(storageKey);
// 检查本地存储是否有值
// if (storedData) {
// // 解析JSON字符串为对象
// storedData = JSON.parse(storedData);
// } else {
// // 没有本地存储,使用默认的JSON对象
// storedData = jsonArray;
// }
return storedData ? JSON.parse(storedData) : jsonArray;
}
var storedData = getData();
// 使用获取到的数据
console.log(storedData);
/*****==========修改数据 保存============****/
var storedData = getData();
// 要修改name为'Bob'的对象的age值为35
var updatedArray = storedData.map(item => {
if (item.id === id) {
return { ...item, show: data.elem.checked }; // 使用展开运算符复制当前对象,并修改age属性
}
return item; // 对不需要修改的对象保持原样
});
console.log(updatedArray);
// 将JSON对象转换为字符串
var jsonString = JSON.stringify(updatedArray);
// 存储到localStorage
localStorage.setItem("myData", jsonString);
// 从localStorage中检索
//var retrievedString = localStorage.getItem("myData");
// 将字符串转换回JSON对象
//var retrievedObject = JSON.parse(retrievedString);
//console.log(retrievedObject);
/**========清除数据====*/
localStorage.removeItem('myData');
切图网-我的前端外包首选。
标签:localStorage, 本地存储
猜你喜欢
- 2024-12-29 刚入职要学会“脏活累活”抢着做 刚入职需要打扫卫生吗
- 2024-12-29 一位游戏外包策划和她接到的“特殊委托”
- 2024-12-29 刚入职某大厂,面对之前遗留的大量糟糕的前端代码,该怎么办?
- 2024-12-29 WebGIS外包开发流程 web外包项目
- 2024-12-29 WebGIS技术外包开发 webgis开发视频教程
- 2024-12-29 视频采集技术的外包开发框架 视频采集技术的外包开发框架有哪些
- 2024-12-29 亲身经历!揭露某IT外包公司(南京)裁员内幕(五)
- 2024-12-29 webGIS技术外包开发 webgis开发视频教程
- 2024-12-29 一则故事告诉你程序员为什么不要进外包公司
- 2024-12-29 React Native (RN) 外包开发成本 ios外包开发
你 发表评论:
欢迎- 633℃几个Oracle空值处理函数 oracle处理null值的函数
- 626℃Oracle分析函数之Lag和Lead()使用
- 614℃0497-如何将Kerberos的CDH6.1从Oracle JDK 1.8迁移至OpenJDK 1.8
- 608℃Oracle数据库的单、多行函数 oracle执行多个sql语句
- 606℃Oracle 12c PDB迁移(一) oracle迁移到oceanbase
- 598℃【数据统计分析】详解Oracle分组函数之CUBE
- 588℃最佳实践 | 提效 47 倍,制造业生产 Oracle 迁移替换
- 572℃Oracle有哪些常见的函数? oracle中常用的函数
- 最近发表
-
- oracle 19cOCM认证有哪些内容(oracle认证ocm月薪)
- Oracle新出AI课程认证,转型要持续学习
- oracle 表的查询join顺序,可能会影响查询效率
- Oracle DatabaseAmazon Web Services正式可用,Oracle数据库上云更容易了
- Oracle 19.28 RU 升级最佳实践指南
- 汉得信息:发布EBS系统安装启用JWS的高效解决方案
- 如何主导设计一个亿级高并发系统架构-数据存储架构(三)
- Java 后端开发必看!工厂设计模式轻松拿捏
- ORA-00600 「25027」 「x」报错(抱错孩子电视剧 爸爸是武术 另一个爸爸是画家)
- 新项目终于用上了jdk24(jdk新建项目)
- 标签列表
-
- 前端设计模式 (75)
- 前端性能优化 (51)
- 前端模板 (66)
- 前端跨域 (52)
- 前端缓存 (63)
- 前端aes加密 (58)
- 前端脚手架 (56)
- 前端md5加密 (54)
- 前端路由 (61)
- 前端数组 (73)
- 前端js面试题 (50)
- 前端定时器 (59)
- 前端获取当前时间 (50)
- Oracle RAC (76)
- oracle恢复 (77)
- oracle 删除表 (52)
- oracle 用户名 (80)
- oracle 工具 (55)
- oracle 内存 (55)
- oracle 导出表 (62)
- oracle约束 (54)
- oracle 中文 (51)
- oracle链接 (54)
- oracle的函数 (58)
- 前端调试 (52)
本文暂时没有评论,来添加一个吧(●'◡'●)