HTML5 Web Storage

简介

HTML5 web storage, better than cookies.

  • more secure and faster
  • data store in name/value pairs
  • the storage limit is at least 5MB

 

 

1. 发展过程:

 

 

 

2. 浏览器支持情况:

 

 

 

3. HTML5 Web Storage 提供如下两种对象:

  • window.localStorage - stores data with no expiration date  没有过期日期
  • sessionStorage - stores data for one session (data is lost when the tab is closed) 

   两者使用没有区别,下面使用中以localStorage举例

 

4. 基本使用:

 

使用前应该判断浏览器是否支持

if(typeof(Storage)!=="undefined")   {   // Code for localStorage/sessionStorage.
  } else   {   // Sorry! No Web Storage support..
  }

使用:

localStorage.setItem("name","wish");  // store
localStorage.name="wish"; localStorage["name"]="wish";  localStorage.getItem("name");  //retrieve
 localStorage.removeItem("name");  //remove
 localStorage.clear();      //删除所有
 localStorage.key(i);   // get key

 

注意: localStorage calls toString on all stored values.  所以如果是数字等类型也会转化为String

5.例子

在google resource中查看:removeItem后改记录消失

简单页面访问计数:

使用localStorage:

if (localStorage.visitcount)
  {
  localStorage.visitcount = Number(localStorage.visitcount) + 1; //需要转换类型
  }
else
  {
  localStorage.visitcount= 1;
  }
document.getElementById("visitTimes").innerHTML="You have visited " +
localStorage.visitcount+ " time(s).";
 

使用sessionStorage:

if (sessionStorage.visitcount)
  {
  sessionStorage.visitcount = Number(sessionStorage.visitcount) + 1; //需要转换类型
  }
else
  {
  sessionStorage.visitcount= 1;
  }
document.getElementById("visitTimes").innerHTML="You have visited " +
sessionStorage.visitcount+ " time(s).";

6.github上store.js

  github地址:https://github.com/marcuswestin/store.js/

  • 基于localStorage  :store.js exposes a simple API for cross browser local storage
  • 无兼容性问题:store.js uses localStorage when available, and falls back on the userData behavior in IE6 and IE7
  • 存储时不会tostring: store.js uses JSON.stringify() and JSON.parse() on each call to store.set() and store.get()

  基本使用如下:

store.set("name", "wish")  // Store
 store.get("name")   // Get
 store.remove("username")  // Remove "name"
 store.clear()  // Clear all keys

以上是小编为您精心准备的的内容,在的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索类型
, store
, github for windows
, localstorage
, name
, storage
, Wish
localstorage使用
,以便于您获取更多的相关知识。

时间: 2024-10-31 17:16:26

HTML5 Web Storage的相关文章

HTML5权威指南--Web Storage,本地数据库,本地缓存API,Web Sockets API,Geolocation API(简要学习笔记二)

1.Web Storage HTML5除了Canvas元素之外,还有一个非常重要的功能那就是客户端本地保存数据的Web Storage功能. 以前都是用cookies保存用户名等简单信息.   但是cookie有下面几个问题: a:大小:cookies的大小被限制在4KB b:带宽:cookies随HTTP事务一起被发送,因此会浪费一部分发送的cookies时使用的带宽. c:复杂性:要正确的操纵cookies是很困难的.   Web Storage分为两种: <1>sessionStorag

【HTML5】Web Storage简析

什么是Web Storage? web storage是HTML5规范中提出的一种本地存储解决方案.在这之前,我们在开发中遇到本地存储问题时,通常有两种解决方式 cookie:兼容性最好,但也有不少问题,下面会简单做下对比 各浏览器实现的非标准化的本地存储方案,如IE的userData,firefox的global storage等,毫无疑问,最大的问题是兼容性 session storage.local storage的区别 session storage的作用在于:将数据存储在本地,只有当次

利用Web存储工具创建HTML5 Web应用程序

HTML5 提供了新的语义元素,还提供了恰当的使用应用程序缓存器.JavaScript worker.新版本的 XMLHttpRequest 和一种名为 Web 存储的工具创建 HTML Web 应用程序的方式.本文将探讨 Web 存储的强大功能,以及它成为一种优于 cookies 的存储方法的原因.通过本文您将了解基本概念.浏览器支持和 HTML5 Web 存储对象. Cookies 从 JavaScript 出现之初就一直存在,所以在 Web 上存储数据并不是个新概念.不过Web 存储是数据

H5本地储存Web Storage

   一.本地存储由来的背景 由于HTML4时代Cookie的大小.格式.存储数据格式等限制,网站应用如果想在浏览器端存储用户的部分信息,那么只能借助于Cookie.但是Cookie的这些限制,也就导致了Cookie只能存储一些ID之类的标识符等简单的数据. 下面是Cookie的限制: 大多数浏览器支持最大为 4096 字节的 Cookie. 浏览器还限制站点可以在用户计算机上存储的 Cookie 的数量.大多数浏览器只允许每个站点存储 20 个Cookie;如果试图存储更多 Cookie,则最

页面相关的数据存储(缓存及Web Storage)

页面可用的缓存包括:Http Cache, Local Storage, Session Storage以及Application Cache. 它们都可以用来减少请求数量,以提高页面的性能及减少流量消耗,这对于移动端的浏览器来说更为重要 (另外还有Memory Cache, 不过对于前端工程而言是透明的). Http Cache 最为常用的缓存机制.相对后三项属于浏览器内核内的模块(也是H5中定义的标准),Http Cache早已存在于HTTP模块中了.它是网络层对HTTP协议实现中一部分.它

Html5 Web的5中离线存储方式之localStorage

Html5 Web的5中离线存储方式之localStorage 在HTML5越来越流行的今天,如果你还不知道离线存储,那就说明你落后了很多. HTML5的离线存储方式有多种:Web SQL Database.LocalStorage.Cookie.WebStorage.IndexedDB.FileSystem. Web SQL Database目前虽然还有浏览器支持,是唯一的关系数据库结构的存储,但W3C以及停止对其的维护和发展.我就不多说了. 今天我们主要看LocalStorage这种最简单的

数据库-Web Storage 为什么用不了removeItem函数

问题描述 Web Storage 为什么用不了removeItem函数 我已经编写好了这样一串代码 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"&g

JavaScript多线程之HTML5 Web Worker

在博主的前些文章Promise的前世今生和妙用技巧和JavaScript单线程和浏览器事件循环简述中都曾提到了HTML5 Web Worker这一个概念.在JavaScript单线程和浏览器事件循环简述中讲述了JavaScript出于界面元素访问安全的考虑,所以JavaScript运行时一直是被实现为单线程执行的:这也意味着我们应该尽量的避免在JavaScript中执行较长耗时的操作(如大量for循环的对象diff等)或者是长时间I/O阻塞的任务,特别是对于CPU计算密集型的操作. 例如在Jav

html5-开发HTML5 web和移动app用什么开发工具好呢?

问题描述 开发HTML5 web和移动app用什么开发工具好呢? 看了些html5的一些新闻,有推荐使用HBuilder的,试了下,是挺快的. 但是不知道现在主流的开发工具是什么? http://www.25xt.com/html5css3/6817.html 这个网站说2015必火的5个开发工具 解决方案 其实最牛逼的一种方式是用text文件编写,或者用Editplus这种方式比较好,特别是对于初学者来说.