iis服务器助手广告
返回顶部
首页 > 资讯 > 前端开发 > node.js >HTML5本地存储的方法
  • 217
分享到

HTML5本地存储的方法

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

今天小编给大家分享一下HTML5本地存储的方法的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧

今天小编给大家分享一下HTML5本地存储的方法的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。

html5 LocalStorage本地存储

说到本地存储,这玩意真是历尽千辛万苦才走到HTML5这一步.

最初的Cookies自然是大家都知道,问题主要就是太小,大概也就4KB的样子,而且IE6只支持每个域名20个cookies ,太少了。优势就是大家都支持,而且支持得还蛮好。很早以前那些替换cookies的用户也都慢慢的不存在了,就好像以前替换javascript的用户不存在了一样。

userData是IE的东西,垃圾。现在用的最多的是Flash吧,空间是Cookie的25倍,基本够用。再之后Google推出了Gears ,虽然没有限制,但不爽的地方就是要装额外的插件(没具体研究过)。到了HTML5把这些都统一了,官方建议是每个网站5MB ,非常大了,就存些字符串,足够了。比较奇怪异的是居然所有支持的浏览器目前都采用的5MB ,,尽管有一些浏览器可以让用户设置,但对于网页制作者来说,目前的规模就5MB来考虑是比较妥当的。

IE在8.0的时候就支持了,非常出人意料。不过需要注意的是,IE ,Firefox测试的时候需要把文件上传到服务器上(或者localhost ),直接点开本地的HTML文件,是不行的。

首先自然是检测浏览器是否支持本地存储。在HTML5中,本地存储是一个窗口的属性,包括localStorage和sessionStorage ,从名字应该可以很容易的辨认识别的区别,前者是一直存在本地的,只是伴随着session ,窗口一旦关闭就没了。多个适当的完全相同,这里以localStorage为例。

if(window.localStorage){

 alert('此浏览器支持localStorage');

} else {

 alert('此浏览器不支持localStorage');

}

存储数据的方法就是直接给window.localStorage添加一个属性,例如:window.localStorage.a 或者 window.localStorage [“ a”] 。它的读取,写入,删除操作方法很简单,以键值对的方式存在的,如下:

localStorage.a = 3; //设置a为“ 3”

localStorage [“ a”] =“ sfsf”; //设置a为“ sfsf” ,覆盖上面的值

localStorage.setItem(“ b”,“ isaac”) ; //设置b为“ isaac”

var a1 = localStorage [“ a”]; //获取a的值

var a2 = localStorage.a; //获取a的值

var b = localStorage.getItem(“ b”); //获取b的值

localStorage.removeItem(“ c”); //清除c的值

这里最推荐使用的自然是getItem()和setItem(),清除键值对使用removeItem()。如果希望一次性清除所有的键值对,可以使用clear()。另外,HTML5还提供了一个键( )方法,可以在不知道有一些键值的时候使用,如下:

var storage = window.localStorage;

函数showStorage(){

 for(var i = 0; i  // key(i)获得相应的键,再用getItem()方法获得对应的值

  document.write(storage.key(i)+“:” + storage.getItem(storage.key(i))+“

” );

 }

}

写一个最简单的,利用本地存储的计数器:

var storage = window.localStorage;

如果(!storage.getItem(“ pageLoadCount”))storage.setItem(“ pageLoadCount”,0);

storage.pageLoadCount = parseInt(storage.getItem(“ pageLoadCount”))+ 1; //必须格式转换

document.getElementByIdx_x(“ count”)。innerHTML = storage.pageLoadCount;

showStorage();

不断刷新能够看到数字在一点点增长

需要注意的是,HTML5本地存储只能存储二进制,任何格式存储的时候都会被自动转为串行,所以读取的时候,需要自己进行类型的转换。这也就是上一段代码中parseInt必须要使用的原因。

另外,在iPhone / iPad的上有时设置setItem()时会出现诡异的QUOTA_EXCEEDED_ERR错误,这时一般在setItem之前,先的removeItem()就确定了。

HTML5的本地存储,还提供了一个存储事件,可以对键值对的改变进行监听,使用方法如下:

if(window.addEventListener){

 window.addEventListener(“ storage”,handle_storage,false);

}其他if(window.attachEvent){

 window.attachEvent(“ onstorage”,handle_storage);

}

函数handle_storage(e){

 if(!e){e = window.event;}

 // showStorage();

}

对于事件变量e ,是一个StorageEvent对象,提供了一些实用的属性,可以很好的观察键值对的变化,如下表:

 财产

 类型

 描述

 钥匙

 细绳

 添加,删除或修改的命名密钥

 旧值

 任何

 先前的值(现已覆盖);如果添加了新项目,则为null

 newValue

 任何

 新值;如果添加了项目,则为null

 网址/ uri

 细绳

 调用触发此更改的方法的页面

这里添加两个键值对a和b ,并增加一个按钮。给a设置固定的值,当点击按钮时,修改b的值:

您已经浏览过此页面 0次。

测试发现,目前浏览器对这个支持不太好,仅iPad和Firefox支持,而且Firefox支持得乱糟糟,e对象根本没有那些属性。iPad支持非常好,用的是e.uri (不是e.url ),台式机上的Safari不行,诡异。

目前浏览器都具备很好的开发者调试功能,下面分别是Chrome和Firefox的调试工具查看LocalStorage :

另外,目前的JavaScript使用非常多的JSON格式,如果希望存储在本地,可以直接调用jsON.stringify()将其转为编码。读取出来后调用JSON.parse()将字符串转为json格式,如下所示:

var details = {作者:“ isaac”,“描述”:“ fresheggs”,“评分”:100};

storage.setItem(“ details”,JSON.stringify(details));

details = JSON.parse(storage.getItem(“ details”));

JSON对象在支持localStorage的浏览器上基本都支持,需要注意的是IE8 ,它支持JSON ,但如果添加了如下的兼容模式代码,切到IE7模式就不行了(此时依然支持localStorage ,虽然显示窗口.localStorage是[object] ,而不是之前的[object Storage] ,但测试发现getItem(),setItem()等均能使用)。

以上就是“HTML5本地存储的方法”这篇文章的所有内容,感谢各位的阅读!相信大家阅读完这篇文章都有很大的收获,小编每天都会为大家更新不同的知识,如果还想学习更多的知识,请关注编程网node.js频道。

--结束END--

本文标题: HTML5本地存储的方法

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

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

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

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

下载Word文档
猜你喜欢
  • HTML5本地存储的方法
    今天小编给大家分享一下HTML5本地存储的方法的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧...
    99+
    2024-04-02
  • HTMl5中sessionStorage和本地存储的方法
    这篇文章主要介绍“HTMl5中sessionStorage和本地存储的方法”,在日常操作中,相信很多人在HTMl5中sessionStorage和本地存储的方法问题上存在疑惑,小编查阅了各式资料,整理出简单...
    99+
    2024-04-02
  • 实用的HTML5本地存储方法有哪些
    这篇文章主要介绍了实用的HTML5本地存储方法有哪些的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇实用的HTML5本地存储方法有哪些文章都会有所收获,下面我们一起来看看吧。 ...
    99+
    2024-04-02
  • vue本地储存的方法
    这篇文章主要介绍“vue本地储存的方法”,在日常操作中,相信很多人在vue本地储存的方法问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”vue本地储存的方法”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!Vu...
    99+
    2023-06-30
  • html5有哪些本地存储
    这篇文章主要介绍“html5有哪些本地存储”,在日常操作中,相信很多人在html5有哪些本地存储问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”html5有哪些本地存储”的疑惑...
    99+
    2024-04-02
  • HTML5本地存储globalStorage的基本语法是什么
    这篇文章主要介绍“HTML5本地存储globalStorage的基本语法是什么”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“HTML5本地存储globalStora...
    99+
    2024-04-02
  • html5本地存储中的localstorage和本地数据库与sessionStorage的使用方法
    这篇文章给大家介绍html5本地存储中的localstorage和本地数据库与sessionStorage的使用方法,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。html5的一个非常c...
    99+
    2024-04-02
  • HTML5存储的方法
    这篇文章主要介绍“HTML5存储的方法”,在日常操作中,相信很多人在HTML5存储的方法问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”HTML5存储的方法”的疑惑有所帮助!接...
    99+
    2024-04-02
  • HTML5中LocalStorage本地存储的概念
    这篇文章主要为大家展示了“HTML5中LocalStorage本地存储的概念”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“HTML5中LocalStorage本...
    99+
    2024-04-02
  • html5本地存储localStorage的示例分析
    这篇文章将为大家详细讲解有关html5本地存储localStorage的示例分析,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。1、html5几种存储形式 &nb...
    99+
    2024-04-02
  • HTML5中的本地存储全新体验
    HTML5中的本地存储全新体验,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。 为什么要存数据到客户...
    99+
    2024-04-02
  • Html5中本地存储的示例分析
    小编给大家分享一下Html5中本地存储的示例分析,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧! 他...
    99+
    2024-04-02
  • HTML5中LocalStorage本地存储怎么用
    这篇文章给大家分享的是有关HTML5中LocalStorage本地存储怎么用的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。1.前言HTML5 storage提供了一种方式让网站能...
    99+
    2024-04-02
  • html5中web本地存储怎么用
    这篇文章主要介绍了html5中web本地存储怎么用,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。 在html5...
    99+
    2024-04-02
  • 什么是HTML5本地存储技术
    什么是HTML5本地存储技术,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。本地缓存是HTML5出现的新技术,这个技术的出现使得移动web的开发...
    99+
    2024-04-02
  • Html5中本地存储IndexedDB怎么用
    这篇文章将为大家详细讲解有关Html5中本地存储IndexedDB怎么用,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。IndexedDB 是一种低级API,用于客户端存储...
    99+
    2024-04-02
  • HTML5本地存储和本地数据库的示例分析
    这篇文章将为大家详细讲解有关HTML5本地存储和本地数据库的示例分析,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。本地存储1.1 本地存储由来的背景由于HTML4时代Co...
    99+
    2024-04-02
  • HTML5中LocalStorage本地存储的示例分析
    这篇文章给大家分享的是有关HTML5中LocalStorage本地存储的示例分析的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。H5的两种存储技术的最大区别就是生命周期。1. lo...
    99+
    2024-04-02
  • HTML5网页存储的方法
    这篇“HTML5网页存储的方法”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“HTML5网页...
    99+
    2024-04-02
  • html5中如何使用LocalStorage本地存储
    本篇文章为大家展示了html5中如何使用LocalStorage本地存储,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。 一、本地存储  ...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作