我的编程空间,编程开发者的网络收藏夹
学习永远不晚

HTML5中如何实现网络存储

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

HTML5中如何实现网络存储

这篇文章将为大家详细讲解有关HTML5中如何实现网络存储,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。

1 前言

随着互联网的快速发展,基于网页的应用越来越普遍,同时也变得越来越复杂,为了满足日益更新的需求,会经常性的在本地设备上存储数据,例如记录历史活动信息。传统方式使用document.cookie来进行存储,但是由于其存储的空间只有4KB左右,并且需要复杂的操作进行解析,给发开者带来很多不便,为此,HTML5规范提出了网络存储的解决方案。

2 Web storage及其两种存储方式

2.1 Web Storage简介

1.1 特点

(1)设置数据和读取数据比较方便

(2)容量较大,sessionStorage约5M,localStorage约20M

(3)只能存储字符串,如果要存储JSON对象,可以使用window.JSON的stringify()方法和parse()方法进行序列化和反序列化。

1.2 优势

(1)减少网络流量:一旦数据保存在本地后,就可以避免再向服务器请求数据,因此减少不必要的数据请求,减少数据在浏览器和服务器间不必要地来回传递。

(2)快速显示数据:性能好,从本地读数据比通过网络从服务器获得数据快得多,本地数据可以即时获得。加上网页本身也可以有缓存,整个页面和数据都在本地的话,可以立即显示。

(3)临时存储:很多时候数据只需要在用户浏览一组页面期间使用,关闭窗口后数据就可以丢弃了,这种情况使用sessionStorage非常方便。

2.2 localStorage实现本地存储

localStorage作为HTML5 Web Storage的API之一,主要的作用是进行本地存储。本地存储是指将数据按照键值对的方式保存在客户端计算机中,直到用户或者脚本主动清除数据,否则该数据会一直存在。也就是说,使用了本地存储的数据将被持久化。localStorage的优势在于拓展了cookie的4KB限制,并且会可以将第一次请求的数据直接存储到本地,这个相当于一个5M大小的针对于前端页面的数据库。

2.1 localStorage中的方法属性

方法属性

描述

setItem(key,value)

该方法接收一个键名和值作为参数,将会把键值对添加到存储中,如果键名存在,则更新其对应的值

getItem(key)

该方法接收一个键名作为参数,返回键名对应的值

romoveItem(key)

该方法接收一个键名作为参数,并把该键名从存储中删除

length

类似数组的length属性,用于访问Storage对象中item的数量

key(n)

用于访问第n个key的名称

clear()

清除当前域下的所有localSotrage内容

表格 2.2.1

代码示例:

<!DOCTYPE  html><html><head><meta  charset="UTF-8"><title>localStorage</title></head><body><input  type="text" id="username" ><input  type="button"   value="localStorage 设置数据 "  id="localStorageId"><input  type="button"   value="localStorage 获取数据 "  id="getlocalStorageId"><input  type="button"   value="localStorage 删除数据 "  id="removesessionStorageId"><script>document.getElementById("localStorageId").onclick=function(){// 把用户在 input   里面数据的数据保存到 localStoragevar  username=document.getElementById("username").value;window.localStorage.setItem("username",username);};document.getElementById("getlocalStorageId").onclick=function(){// 获取数据,从 localStoragevar  username=window.localStorage.getItem("username");alert(username);};document.getElementById("removesessionStorageId").onclick=function(){// 删除 localStorage 中的数据var  username=document.getElementById("username").value;window.localStorage.removeItem("username");};</script></body></html>

sessionStorage 主要用于区域存储,区域存储是指数据只在单个页面的会话期内有效。由于 sessionStroage 也是 Storage 的实例, sessionStroage 与 localStorage 中的方法基本一致,唯一区别就是存储数据的生命周期不同, locaStorage 是永久性存储,而 sessionStorage 的生命周期与会话保持一致,会话结束时数据消失。

 2.3sessionStorage实现区域存储 

从硬件方面理解, localStorage 的数据是存储子在硬盘中的,关闭浏览器时数据仍然在硬盘上,再次打开浏览器仍然可以获取,而 sessionStorage 的数据保存在浏览器的内存中,当浏览器关闭后,内存将被自动清除,需要注意的是, sessionStorage 中存储的数据只在当前浏览器窗口有效。

代码示例:

<!DOCTYPE  html><html><head><meta  charset="UTF-8"><title>sessionStorage</title></head><body>姓名:  <input type="text" id="username"> 年龄:  <input type="text" id="age"><input  type="button" value="sessionStorage 设置数据 "  11 id="sessionStorageId"><input  type="button" value="sessionStorage 获取数据 "  id="getsessionStorageId"><input  type="button" value="sessionStorage 清除所有数据 "  id="clearsessionStorageId"><script>// 增加数据document.getElementById("sessionStorageId").onclick  = function() {// 获取姓名和年龄输入框的值var  username = document.getElementById("username").value;var age =  document.getElementById("age").value;// 定义一个 user 对象用来保存获取的信息var user  = {username: username,age: age}// 使用 stringify() 将 JSON 对象序列号并存入到 sessionStoragewindow.sessionStorage.setItem("user",JSON.stringify(user));};//sessionStorage   里面存储数据,如果关闭了浏览器,数据就会消失 ..// 单个浏览器窗口页面有效document.getElementById("getsessionStorageId").onclick  = function() {var valu = window.sessionStorage.getItem("user");alert(valu);};// 清除所有的数据document.getElementById("clearsessionStorageId").onclick  = function() {window.sessionStorage.clear();};</script></body></html>

关于“HTML5中如何实现网络存储”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

HTML5中如何实现网络存储

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

下载Word文档

猜你喜欢

HTML5中如何实现网络存储

这篇文章将为大家详细讲解有关HTML5中如何实现网络存储,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。1 前言随着互联网的快速发展,基于网页的应用越来越普遍,同时也变得越来越复杂,为了满足日益更新的需求,
2023-06-09

如何在HTML5中实现客户端存储

如何在HTML5中实现客户端存储?很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。离线检测要知道设备是否在线还是离线,HTML5 定义了一个 navigator.o
2023-06-09

如何在html5中使用localStorage实现本地存储

本篇文章给大家分享的是有关如何在html5中使用localStorage实现本地存储,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。1、localStorage.name="老王
2023-06-09

vertica如何实现存储

这篇文章给大家介绍vertica如何实现存储,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。JAVA 等通用语言缺乏结构化计算类库,即使最简单的结构化算法,比如查询、排序、聚合,也要从零开始硬编码。对于很常用的算法,比如
2023-06-03

Fedora中如何配置网络存储和文件共享

在Fedora中配置网络存储和文件共享可以通过Samba进行。以下是在Fedora中配置Samba的步骤:安装Samba软件包:打开终端并输入以下命令来安装Samba软件包:sudo dnf install samba配置Samba服务:编
Fedora中如何配置网络存储和文件共享
2024-04-09

HTML5中如何实现网页水印SDK

这篇文章将为大家详细讲解有关HTML5中如何实现网页水印SDK,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。网页水印SDK,实现思路1.能更具获取到的当前用户信息,如名字,昵称,ID等,生成水印2.生成一
2023-06-09

Mybatis如何实现SQL存储

这篇“Mybatis如何实现SQL存储”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“Mybatis如何实现SQL存储”文章吧
2023-07-05

Android如何实现文件存储

这篇文章主要讲解了“Android如何实现文件存储”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Android如何实现文件存储”吧!1、文件存储案例public class TestActi
2023-06-25

SharedPreferences如何在android中实现数据存储

本篇文章为大家展示了SharedPreferences如何在android中实现数据存储,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。Android平台给我们提供了一个SharedPreferenc
2023-05-31

vertica 如何实现存储过程?

只要多花时间,JAVA 总是可以实现算法的,但高耦合性的缺点却无法避免。存储过程本应独立于 JAVA 代码,修改存储过程本不该影响 JAVA 代码。但 JAVA 开发的存储过程会和其他 JAVA 代码紧密耦合,只要修改存储过程,就必然重新编译打包整个项目,项目
vertica 如何实现存储过程?
2017-10-28

C#如何实现存储过程

这篇文章将为大家详细讲解有关C#如何实现存储过程,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。C#存储过程源代码public static int VerifyUser(clsUser user) {
2023-06-18

SUSE系统如何配置和管理网络存储

在SUSE系统中配置和管理网络存储可以通过以下步骤实现:检查网络存储设备:首先,确保网络存储设备已正确连接到网络并已通过网络正常访问。可以使用命令ping或traceroute来测试网络存储设备的连接性。挂载网络存储设备:在SUSE系统中,
SUSE系统如何配置和管理网络存储
2024-04-09

VB.NET如何实现集合存储

这篇文章将为大家详细讲解有关VB.NET如何实现集合存储,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。大多数程序处理对象集合而不是单个的对象。对于集合数据,首先创建一个数组(或者是其他类型的集合,比如Ar
2023-06-17

NAS网络存储中如何使用Docker安装百度网盘客户端

这篇文章将为大家详细讲解有关NAS网络存储中如何使用Docker安装百度网盘客户端,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。1.首先登录TOS系统,应用商店-docker安装; 2.注册表搜索baid
2023-06-04

编程热搜

  • Python 学习之路 - Python
    一、安装Python34Windows在Python官网(https://www.python.org/downloads/)下载安装包并安装。Python的默认安装路径是:C:\Python34配置环境变量:【右键计算机】--》【属性】-
    Python 学习之路 - Python
  • chatgpt的中文全称是什么
    chatgpt的中文全称是生成型预训练变换模型。ChatGPT是什么ChatGPT是美国人工智能研究实验室OpenAI开发的一种全新聊天机器人模型,它能够通过学习和理解人类的语言来进行对话,还能根据聊天的上下文进行互动,并协助人类完成一系列
    chatgpt的中文全称是什么
  • C/C++中extern函数使用详解
  • C/C++可变参数的使用
    可变参数的使用方法远远不止以下几种,不过在C,C++中使用可变参数时要小心,在使用printf()等函数时传入的参数个数一定不能比前面的格式化字符串中的’%’符号个数少,否则会产生访问越界,运气不好的话还会导致程序崩溃
    C/C++可变参数的使用
  • css样式文件该放在哪里
  • php中数组下标必须是连续的吗
  • Python 3 教程
    Python 3 教程 Python 的 3.0 版本,常被称为 Python 3000,或简称 Py3k。相对于 Python 的早期版本,这是一个较大的升级。为了不带入过多的累赘,Python 3.0 在设计的时候没有考虑向下兼容。 Python
    Python 3 教程
  • Python pip包管理
    一、前言    在Python中, 安装第三方模块是通过 setuptools 这个工具完成的。 Python有两个封装了 setuptools的包管理工具: easy_install  和  pip , 目前官方推荐使用 pip。    
    Python pip包管理
  • ubuntu如何重新编译内核
  • 改善Java代码之慎用java动态编译

目录