客户端存储数据的两个对象为:
两个对象在使用方式没有任何区别,唯一的不同点蚀储存数据 的有效时间
①localStorage - 没有时间限制的数据存储 除非手动删除,否则数据将一直保存在本地文件;
②sessionStorage - 针对一个 session 的数据存储 当浏览器关闭时,sessionStorage就被清空;

在使用 web 存储前,应检查浏览器是否支持 localStorage 和sessionStorage:
[Storage的数据存储]
1、Storage可以像普通对象一样,使用.追加或者读取最新的数据。
eg:localStorage.username="张三";
2、常用的函数
保存数据:localStorage.setItem(key,value);
读取数据:localStorage.getItem(key);
删除单个数据:localStorage.removeItem(key);
删除所有数据:localStorage.clear();
得到某个索引的key:localStorage.key(index);

检测浏览器是否支持web存储

if(typeof(Storage)!=="undefined"){
alert("支持") ; } else {
alert("不支持") }

                                                                                                         怎样新增一条数据?

1、 取到录入的各种信息
 2、 把这些信息封装成一个对象。
 3、 从本地文件中,读取出存储数据的数组字符串。并将字符串,转回数组格式。
 如果本地文件中,没有这个数组,就新建一个数组存放。
 4、 数组中,push进一个新组建的对象。
 5、 将新数组,重新转为字符串。把字符串丢回文件。
 6、 重新读取一边文件,重新加载表格。

怎样新增一条数据?

1、 从文件中,读取出字符串,转回数组格式。
 2、 判断需要删除的是第几条数据。
 3、 删除掉数组对应的数据、splice
 4、 把新数组重新转为字符串,放回文件。
 5、 重新读取一边文件,重新加载表格。

例如:

        <h4>新增网站</h4>
网站名:<input type="text" id="wangzhanming"/><br />
别名: <input type="text" id="bieming"/><br />
网址:<input type="text" id="wangzhi"/><br />
<input type="button" value="新增网站" onclick="addSite()"/><br />
<!--<input type="button" value="新增网站" onclick="showDia()" />-->
<h4>网站登录</h4>
网站名:<input type="text" id="loginName"/><br />
网址:<input type="text" id="loginPwd"/><br />
<input type="button" value="登录网站" onclick="login()"/><br /> <h4>已保存的网站</h4>
<input type="button" value="删除网站" onclick="delSite()" />
<input type="text" placeholder="网站名" id="search1"/>
<input type="text" placeholder="别名" id="search2"/>
<input type="text" placeholder="网址" id="search3"/>
<input type="button" value="查询" onclick="searchSite()" /> <table style="border-collapse: collapse;" border=;>
<thead>
<th>
<input type="checkbox" id="checkAll" onclick="checkAll()" />
</th>
<th>序号</th>
<th>网站名</th>
<th>别名</th>
<th>网址</th>
</thead>
<tbody id="tbody"> </tbody>
</table>
/*注册*/
function addSite(){ var wangzhanming = document.getElementById("wangzhanming").value;
var bieming = document.getElementById("bieming").value;
var wangzhi = document.getElementById("wangzhi").value;
var site = {
wangzhanming : wangzhanming,
bieming : bieming,
wangzhi : wangzhi
}
if(localStorage.sites == undefined){
var arr = [];
}else{
var str = localStorage.sites;
var arr = JSON.parse(str);
}
for(var i=; i<arr.length; i++){
if(arr[i].wangzhanming == wangzhanming){
alert("网站名已注册!请更换网站名!");return;
}
}
arr.push(site);
var str = JSON.stringify(arr);
localStorage.sites = str; alert("新增成功!!");
showAllSite();
}
/**
* 显示所有的网站列表
*/
function showAllSite(){
if(localStorage.sites == undefined) return;
var str = localStorage.sites;
var arr = JSON.parse(str);
var html = "";
arr.forEach(function(item,index){
html += "<tr class='tr' onclick='chooseInput("+index+")'ondblclick='updateSite("+item.index+")'><td align='center'><input type='checkbox' value='"+index+"' class='checkbox' /></td><td>"+(index+)+"</td><td>"
+item.wangzhanming+"</td><td>"+item.bieming+"</td><td>"+item.wangzhi+"</td></tr>";
}); var tbody = document.getElementById("tbody");
tbody.innerHTML = html;
}
window.onload = function(){
showAllSite();
} /*删除选中的网站*/
function delSite(){
var checkboxs =document.getElementsByClassName("checkbox");
var count=;
var str = localStorage.sites;
var arr = JSON.parse(str); for(var i=;i<checkboxs.length;i++){
if(checkboxs[i].checked){ var index =parseInt(checkboxs[i].value)-count;
arr.splice(index,);
count++;
}
}
localStorage.sites =JSON.stringify(arr);
if(count==){
alert("请至少选择一项!!")
}else{
alert("删除成功!共删除"+count+"条数据!");
showAllSite();
} }

HTML5新增web存储方式的更多相关文章

  1. js Web存储方式

    JSON是数据交互中最常用的一种数据格式. 由于各种语言的语法都不同,在传递数据时,可以将自己语言中的数组.对象等转换为JSON字符串> 传递之后,可以讲JSON字符串,在解析为JSON对象. ...

  2. HTML5中Web存储

    HTML5 中web存储是一个比cookies更好的一个本地存储方式. 那么什么是HTML5存储呢? 使用HTML5可以在本地存储用户浏览的数据,HTML5技术没有出来之前是使用cookies进行本地 ...

  3. 介绍HTML5几种存储方式

    总体情况 h5之前,存储主要是用cookies.cookies缺点有在请求头上带着数据,大小是4k之内.主Domain污染. 主要应用:购物车.客户登录 对于IE浏览器有UserData,大小是64k ...

  4. web 存储方式汇总:Cookies,Session, Web SQL; Web Storage(LocalStorage ,SessionStorage),IndexedDB,Application Cache,Cache Storage

    1 1 1 web 存储方式汇总: 旧的方式: Cookies; Session; Web SQL; 新的方式 HTML5 : Web Storage(LocalStorage ,SessionSto ...

  5. 前端HTML5几种存储方式的总结

    接下来要好好总结一些知识,秋招来啦...虽然有好多知识都不大会,但是还是要努力一下,运气这种东西,谁知道呢~ 总体情况 h5之前,存储主要是用cookies.cookies缺点有在请求头上带着数据,大 ...

  6. 【我的前端自学之路】【HTML5】web 存储

    以下为自学笔记内容,仅供参考. 转发请保留原文链接:https://www.cnblogs.com/it-dennis/p/10503539.html 什么是Web存储 cookie最大的缺陷是在每一 ...

  7. html5的web存储详解

    以前我们在本地存储数据都是用document.cookie来存储的,但是由于其的存储大小只有4K左右,解析也很复杂,给开发带来了诸多的不便.不过现在html5出了web的存储,弥补了cookie的不足 ...

  8. html5的web存储

    在html5标准之前,web存储信息需要cookie来完成,但是cookie不适合大量数据存储.因为需要等待服务器响应,所以速度慢/效率低. 本地存储的特点: localstorage是仅存储在用户的 ...

  9. 【html5】Web存储_locaStorage对象的应用

    Web存储 html5可以在本地存储用户浏览的数据,数据的存储原理是以 键/值 存储的 存储对象分类 localStorage:没有时间限制的数据存储 sessionStorage:针对一个会话的数据 ...

随机推荐

  1. JS高级编程读书笔记

    导读:由于书的内容较多,内容划分也非常详尽,所以会分好几篇来写. 此页面仅作为跳转,权当个目录来用. 我会分块进行整理,大致如下: 第一章 简介 讲述javascript的历史,不打算整理,同学们大概 ...

  2. IntelliJ IDEA Windows下Spark开发环境部署

    0x01 环境说明 本地 OS: windows 10 jdk: jdk1.8.0_121 scala: scala-2.11.11 IDE: IntelliJ IDEA ULTIMATE 2017. ...

  3. AIX系统备份相关知识

    AIX系统备份相关知识 --------------------------2013/10/16 预备知识.1.rootvg类似于windows中的C盘,即系统vg,这个vg上面当然也可以划分用户的逻 ...

  4. 如何使用python来模拟鼠标点击(将通过实例自动化模拟在360浏览器中自动搜索"python")

    一.准备工作: 安装pywin32,后面开发需要pywin32的支持,否则无法完成与windows层面相关的操作. pywin32的具体安装及注意事项: 1.整体开发环境: 基于windows7操作系 ...

  5. java之生成可重复执行的sql脚本

    在实际项目开发过程中,sql脚本需要多次执行.而一般的DML和DDL语句一般只能执行一次,再次执行执行时就会报错(操作对应已存在/不存在),所以必须将sql脚本生成可重复执行的.本文共分为4部分:1. ...

  6. Velocity.js的使用

    前面的话 Velocity是一款优秀的JS动画库,完全可以作为jQuery的animate的替代品.需要动画功能时,使用Velocity是一个好选择.本文将详细介绍Velocity.js的使用 概述 ...

  7. C#使用Xamarin开发可移植移动应用进阶篇(6.使用渲染器针对单个平台自定义控件..很很很很重要..),附源码

    前言 系列目录 C#使用Xamarin开发可移植移动应用目录 源码地址:https://github.com/l2999019/DemoApp 可以Star一下,随意 - - 说点什么.. 本篇..基 ...

  8. WPF控制动画开始、停止、暂停和恢复

    1.闲言 好久也没更新一博客了,自己有点发懒,同时确实这几个月来也有点忙.风机监测软件,项目中,有这样一个小需求:正常风机在旋转的时候,上位机软要做一个风机的图片,让它不停地旋转,一但检测到下面风机停 ...

  9. Mongodb 监测

    原文地址:伍仪洲的博客 介绍 为什么要进行监控状态,因为在实际的情况中可能会发生一下无法预计的情况,比如阻塞的问题,阻塞的原因会有很多种情况造成,如果当我们查询文档的时候发生了阻塞,那么就会影响到后面 ...

  10. html canvas-nest.js 源码

    // canvas_width || r.x canvas_height || r.y = e.max / 2 && (r.x -= 0.03 * x_dist, r.y -= 0.0 ...