当前位置: 首页 > news >正文

HTML LocalStorage

一篇关于HTML本地存储的文章
Window.localStorage
只读的localStorage 属性允许你访问一个Document 源(origin)的对象 Storage;存储的数据将保存在浏览器会话中。
localStorage 类似 sessionStorage,但其区别在于:存储在 localStorage 的数据可以长期保留;而当页面会话结束——也就是说,当页面被关闭时,存储在 sessionStorage 的数据会被清除。

  • localStorage ,可以被长期保留。
  • sessionStorage,页面关闭,数据被清楚。
  • localStorage 中的键值对总是以字符串的形式存储。 (需要注意,和 js 对象相比,键值对总是以字符串的形式存储意味着数值类型会自动转化为字符串类型).
 myStorage = localStorage;//添加localStorage.setItem("myCat", "Tom");//获取let cat = localStorage.getItem("myCat");//删除
localStorage.removeItem("myCat");
// 移除所有
localStorage.clear();

如何获取localStorage中存储的所有值
直接使用localStorage即可,获取的值是一个对象。在浏览器控制台中打印结果如下

      storage=localStorage;var length = storage.lengthfor(var i=0;i<length;i++){var index = storage.key(i);console.log(storage.getItem(index));}

在这里插入图片描述

<html>
<script>//添加数据function add(){var text;text=document.getElementById('text').value;index=localStorage.length+1;localStorage.setItem(index,text);}//显示localStorage所有内容function showall(){storage=localStorage;var length = storage.lengthfor(var i=0;i<length;i++){var index = storage.key(i);console.log(storage.getItem(index));}//将内容显示到html上方便交互。var showall = document.getElementById("showall")showall.innerHTML = JSON.stringify(storage);}function clearall(){//清空所有的itemlocalStorage.clear();}
</script>
<body><p>输入需要添加的数据</p><input id="text" type="text"><button type="" onclick=add()>点击添加数据</button><button onclick=showall()>显示所有记录</button><button onclick=clearall()>清空所有记录</button><p id="showall"></p>
</body>
</html>

浏览器中查看Local Storage
在这里插入图片描述
输出的json对象是乱序排列的。
在这里插入图片描述

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • 第1期测试社招面试经验月报
  • (BAT向)Java岗常问高频面试汇总:MyBatis 微服务 Spring 分布式 MySQL等(1)
  • linux的持续性学习
  • C++ 中有符号数与无符号数的隐式转换与运算陷阱
  • Android14 WMS-窗口绘制之relayoutWindow流程(二)-Server端
  • Linux操作系统学习:day01
  • leetcode67:二进制求和
  • 享元模式
  • Maven的三种项目打包方式——pom,jar,war的区别
  • 代码随想录刷题笔记-哈希表篇
  • Vue3 渲染函数 API(五)
  • 基于ensp的园区网络搭建综合实验
  • Apollo9.0 PNC源码学习之Control模块(二)
  • 【系统学C++】二、从C语言到C++(二)
  • Java应届第一年规划
  • @jsonView过滤属性
  • 【RocksDB】TransactionDB源码分析
  • docker容器内的网络抓包
  • exif信息对照
  • Fabric架构演变之路
  • flask接收请求并推入栈
  • jquery ajax学习笔记
  • js
  • Laravel 实践之路: 数据库迁移与数据填充
  • MySQL主从复制读写分离及奇怪的问题
  • pdf文件如何在线转换为jpg图片
  • Spring声明式事务管理之一:五大属性分析
  • UEditor初始化失败(实例已存在,但视图未渲染出来,单页化)
  • 关于Flux,Vuex,Redux的思考
  • 基于 Ueditor 的现代化编辑器 Neditor 1.5.4 发布
  • 嵌入式文件系统
  • 如何编写一个可升级的智能合约
  • 新版博客前端前瞻
  • 用jQuery怎么做到前后端分离
  • python最赚钱的4个方向,你最心动的是哪个?
  • 仓管云——企业云erp功能有哪些?
  • 数据可视化之下发图实践
  • 曜石科技宣布获得千万级天使轮投资,全方面布局电竞产业链 ...
  • ​ 无限可能性的探索:Amazon Lightsail轻量应用服务器引领数字化时代创新发展
  • ​Linux Ubuntu环境下使用docker构建spark运行环境(超级详细)
  • #etcd#安装时出错
  • (1)(1.9) MSP (version 4.2)
  • (bean配置类的注解开发)学习Spring的第十三天
  • (function(){})()的分步解析
  • (Matlab)使用竞争神经网络实现数据聚类
  • (poj1.2.1)1970(筛选法模拟)
  • (论文阅读32/100)Flowing convnets for human pose estimation in videos
  • (学习日记)2024.01.09
  • (一)使用IDEA创建Maven项目和Maven使用入门(配图详解)
  • (原創) 如何動態建立二維陣列(多維陣列)? (.NET) (C#)
  • (转)setTimeout 和 setInterval 的区别
  • (最全解法)输入一个整数,输出该数二进制表示中1的个数。
  • .NET Core 中的路径问题
  • .Net FrameWork总结
  • .NET开源项目介绍及资源推荐:数据持久层