广告
返回顶部
首页 > 资讯 > 前端开发 > VUE >HTML5中web Storage的存储方式有几种
  • 551
分享到

HTML5中web Storage的存储方式有几种

2024-04-02 19:04:59 551人浏览 独家记忆
摘要

这篇文章主要为大家展示了“HTML5中WEB Storage的存储方式有几种”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“html5中web Storage的存

这篇文章主要为大家展示了“HTML5WEB Storage的存储方式有几种”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“html5中web Storage的存储方式有几种”这篇文章吧。

前言

HTML5 的 web Storage 存储方式有两种:localStorage 和 sessionStorage。

这两种方式都是通过键值对保存数据,存取方便,不影响网站性能。他们的用法相同,存储时间不同。
localStorage 的数据保存在本地硬件上,可以永久保存,可以手动调用api清除数据。sessionStorage 保存在 session 对象中,会在浏览器关闭时被清除。

web Storage 的大小在浏览器上是有限制的,不同浏览器大小会有区别,在主流浏览器中,大小约为 5M,用来存储普通数据其实已经足够。

用法

以 localStorage 为例,sessionStorage 用法一样:

setItem

保存数据:localStorage.setItem(key,value);

示例:

localStorage.setItem('name','Hello World');

当 key 相同时会覆盖之前的 value,用于修改数据。如果 value 为对象,需转为 JSON 字符串,否则你读取出来的将会是 [object Object]

getItem

读取数据:localStorage.getItem(key);

示例:

localStorage.getItem('name');       // Hello World

removeItem

删除单个数据:localStorage.removeItem(key);

示例:

localStorage.removeItem('name');
localStorage.getItem('name');       // null

删除 key 为 name 的数据后,loaclStorage 里已经获取不到该数据,则返回 null;

clear

删除所有数据:localStorage.clear();

示例:

localStorage.clear();

此时会把 localStorage 中的所有数据都删除。

key

得到某个索引的key:localStorage.key(index);
示例:

localStorage.setItem('name1','Hello World');
localStorage.setItem('name2','Hello Linxin');
localStorage.key(1);                // name2

获取到索引为 1 的 key,即 name2。

构造函数

在实际项目中,可能需要多次对 localStorage 进行操作,我们可以通过一个构造函数来更好的操作。

示例:

var localEvent = function (item) {
    this.get = function () {
        return localStorage.getItem(item);
    }
    this.set = function (val) {
        localStorage.setItem(item, val);
    }
    this.remove = function () {
        localStorage.removeItem(item);
    }
    this.clear = function () {
        localStorage.clear();
    }
}

// 使用new字符把构造函数实例化出多个对象
var local1 = new localEvent('name1');
var local2 = new localEvent('name2');

local1.set('Hello World');
local2.set('Hello Linxin');

local1.get();               // Hello World
local2.get();               // Hello Linxin

这里只是简单的演示,像我们平时在项目中可能要把对象存储起来,就需要在代码里做些处理。

监听 storage 事件

可以通过监听 window 对象的 storage 事件并指定其事件处理函数,当页面中对 localStorage 或 sessionStorage 进行修改时,则会触发对应的处理函数。

window.addEventListener('storage',function(e){
    console.log('key='+e.key+',oldValue='+e.oldValue+',newValue='+e.newValue);
})

触发事件的时间对象(e 参数值)有几个属性:

  • key : 键值。

  • oldValue : 被修改前的值。

  • newValue : 被修改后的值。

  • url : 页面url。

  • storageArea : 被修改的 storage 对象。

注意:在谷歌浏览器中,需要在不同标签页中修改 storage 才会触发该事件,即 网页A 监听该事件,在 网页B 中修改 localStorage,则 网页A 会触发事件函数。但是在 IE 中,在同个网页修改 localStorage 都会触发该事件。

调试

谷歌浏览器自带调试工具(chrome devtools)非常好用,可以用来调试  localStorage 和 sessionStorage。打开浏览器按f12调出调试工具,可以看到 Application ,点击打开可以看到左边栏有 Storage,包括了 localStorage、sessionStorage、IndexedDB等,选中我们要调试的网站域名,可以看到右边有对应的 key 和 value,可以通过右键进行编辑或删除等。

兼容

IE8 以上就兼容,但是比较特别,需要在服务器上打开的才支持,直接双击打开文件的 file:// 是不兼容的。

到了 IE11 才支持 file:// 下打开的,其他浏览器的支持程度都很高,包括在手机上的兼容。

以上是“HTML5中web Storage的存储方式有几种”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注编程网VUE频道!

--结束END--

本文标题: HTML5中web Storage的存储方式有几种

本文链接: https://www.lsjlt.com/news/80900.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • HTML5中web Storage的存储方式有几种
    这篇文章主要为大家展示了“HTML5中web Storage的存储方式有几种”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“HTML5中web Storage的存...
    99+
    2022-10-19
  • redis有几种存储方式
    Redis其实就是一个用C语言写的一个程序,这个程序用来存储 key-value数据,数据先放在内存,然后写入磁盘指定位置。下面我们梳理一下Redis存储两种方式: RDB和AOF    ...
    99+
    2022-10-18
  • kafka的存储方式有哪几种
    Kafka的存储方式主要有两种: 持久化存储方式:Kafka使用持久化存储方式将消息持久化到磁盘上,确保消息的可靠性。Kafka...
    99+
    2023-10-27
    kafka
  • android数据存储方式有哪几种
    Android数据存储方式有以下几种:1. Shared Preferences(共享偏好设置):用于存储简单的键值对,适用于存储少...
    99+
    2023-09-27
    android
  • Android 数据存储方式有哪几种
    以下内容给大家介绍Android数据存储提供了五种方式: 1、SharedPreferences 2、文件存储 3、SQLite数据库 4、ContentProvider 5、...
    99+
    2022-06-06
    数据 存储 数据存储 Android
  • Docker 存储管理的几种方式
    目录前言一、存储二、卷列表三、绑定挂载四、数据卷容器五、数据备份六、数据恢复总结前言 在本文内容中,我们将讨论 Docker 中管理数据的几种方式,涉及将数据从 Docker 主机挂...
    99+
    2022-11-13
  • Kubernetes几种存储方式性能对比是怎样的
    Kubernetes几种存储方式性能对比是怎样的,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。摘要展示了一个简单的存储对比,使用未经性能优化的多种存储提供的存储卷进行测试和比较...
    99+
    2023-06-04
  • Oracle存储过程的几种调用方式图文详解
    目录一、案例场景1.基础环境2.SQL窗口中调用存储过程3.命令窗口中调用存储过程4.Procedures菜单列表中调用存储过程5.Package或Package Bodies菜单列表中调用存储过程6.Jobs菜单列表调...
    99+
    2023-04-14
    oracle存储过程怎么调用 oracle调用存储过程语句 oracle存储过程实例
  • 如何使用HTML5 Web存储的localStorage和sessionStorage方式进行Web页面数据本地存储
    这篇文章主要介绍了如何使用HTML5 Web存储的localStorage和sessionStorage方式进行Web页面数据本地存储,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大...
    99+
    2022-10-19
  • 将图片储存在MySQL数据库中的几种方法
    通常对用户上传的图片需要保存到数据库中。 解决方法一般有两种: 1、将图片保存的路径存储到数据库; 2、将图片以二进制数据流的形式直接写入数据库字段中。 以下为具体方法: 一、保存图片的上传路径到数据库: ...
    99+
    2022-10-18
  • Android编程中的5种数据存储方式
    本文介绍Android平台进行数据存储的五大方式,分别如下: 1 使用SharedPreferences存储数据 2 文件存储数据    ...
    99+
    2022-06-06
    数据 存储 数据存储 Android
  • Java中创建并写文件的方式有几种
    这篇文章主要讲解了“Java中创建并写文件的方式有几种”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Java中创建并写文件的方式有几种”吧!在java中有很多的方法可以创建文件写文件,你是否...
    99+
    2023-06-16
  • Docker中数据卷管理的方式有哪几种
    本篇内容介绍了“Docker中数据卷管理的方式有哪几种”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!什么是数据卷数据卷( volume ):...
    99+
    2023-06-20
  • Android平台中实现数据存储的5种方式
    本文介绍Android中的5种数据存储方式,具体内容如下   数据存储在开发中是使用最频繁的,在这里主要介绍Android平台中实现数据存储的5种方式,分别...
    99+
    2022-06-06
    数据 存储 数据存储 Android
  • Java中数组的存储方式有哪些
    在Java中,数组的存储方式有以下几种: 静态存储:在编译时就确定了数组的大小,并且数组的大小是固定的。静态存储的数组在程序的整...
    99+
    2023-10-27
    Java
  • JavaScript中本地存储的方式有哪些?
    就是浏览器给我们提供的可以让我们在浏览器上保存一些数据 常用的本地存储 localStorage sessionStorage localStorage 特点 长期存储,除非手动删除否则会一直保存在浏览器中,清除缓存或者卸载浏览器...
    99+
    2023-09-04
    javascript 前端 开发语言
  • Bash是否是自然语言处理中的一种存储方式?
    自然语言处理(NLP)是人工智能领域中非常重要的一个分支。NLP的目的是让计算机能够理解、处理、生成人类自然语言的文本数据。在NLP中,数据的存储是非常关键的一环,因为数据的存储方式会直接影响到NLP算法的效率和准确性。那么,Bash是否...
    99+
    2023-11-01
    bash 存储 自然语言处理
  • NumPy 数组在 PHP 中的存储方式有哪些?
    NumPy 数组是Python科学计算中最常用的数据结构之一,它提供了高效的多维数组操作功能。然而,在PHP中,我们也需要处理大量的数值数据,因此了解NumPy数组在PHP中的存储方式是非常重要的。本文将介绍NumPy数组在PHP中的存储方...
    99+
    2023-10-02
    数据类型 存储 numpy
  • Java中的存储技术有哪些?如何选择最适合的存储方式?
    Java是一种广泛使用的编程语言,它提供了多种存储技术,以满足不同的需求。在本文中,我们将介绍Java中的一些常见存储技术,并探讨如何选择最适合的存储方式。 一、Java中的存储技术 文件存储:Java提供了File类和相关的IO类,用...
    99+
    2023-10-12
    http 编程算法 存储
  • 基于keras中训练数据的几种方式对比有什么不同
    这篇文章主要介绍了基于keras中训练数据的几种方式对比有什么不同,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。一、train_on_batchmodel.train_on_...
    99+
    2023-06-15
软考高级职称资格查询
推荐阅读
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作