博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
HTML5 | Web Storage
阅读量:5446 次
发布时间:2019-06-15

本文共 2437 字,大约阅读时间需要 8 分钟。

Web Storsge - 本地客户端存储数据功能

  • 代替Cookies在客户端保存用户名等一些简单的用户信息
  • Cookies
    缺点:
    • 大小限制在4KB
    • 带宽浪费
    • 难以操作

sessionStorage - 临时保存

把数据存储在session对象之中,session就是打开网站到关闭网站之间要求进行保存的数据

  • 保存数据方法:
    2
    • sessionStorage.setItem('key', 'value');
    • sessionStorage.key('value');
  • 读取数据方法:
    2
    • str = sessionStorage.getItem('key');
    • str = sessionStorage.key(index);

<<webstorage.js>>

function saveStorage(id) {    var str = document.getElementById(id).value; // 通过str来读取input输入的值    sessionStorage.setItem("name", str); // 通过方法存入sessionStorage}function readStorage(id) {    var target = document.getElementById(id);    var msg = sessionStorage.getItem("name"); // 读取sessionStorage的name值    target.innerHTML = msg;}

<<index.html>>

                

 


localStorage - 永久保存

信息存储在客户端本地,关闭网页后再次打开信息也存在

  • 保存数据的方法:
    • localStorage.setItem('key', 'value');
    • localStorage.key('value');
  • 读取数据的方法
    • str = localStorage.getItem('key');
    • str = localStorage.key(index); // 通过索引号

<<webstorage.js>>

function saveStorage(id) {    var str = document.getElementById(id).value; // 通过str来读取input输入的值    localStorage.setItem("name", str); // 通过方法存入sessionStorage}function readStorage(id) {    var target = document.getElementById(id);    var msg = localStorage.getItem("name"); // 读取sessionStorage的name值    target.innerHTML = msg;}

 


简单的留言板

要求:在留言板中将留言时间与内容相匹配,具有保存、清除、读取功能

<<webstorage.js>>

// 保存数据function saveStorage(id) {    var target = document.getElementById(id);    var str = target.value;    var time = new Date().getTime(); // 读取到毫秒数    localStorage.setItem(time, str);    loadStorage('msg'); // 保存的时候即显示    target.value = "";}// 加载数据function loadStorage(id) {    var newElem = "
"; // 定义新DOM元素table for (var i = 0; i < localStorage.length; i++) { var loadTime = localStorage.key(i); // 通过索引获取key var loadMsg = localStorage.getItem(loadTime); // 通过时间获取留言信息 var oTime = new Date(); // 创建Date对象 oTime.setTime(loadTime); // 将loadTime转换为时间对象 var strTime = oTime.toUTCString(); // 将时间对象字符串化 newElem += "
"; // 在table中加上该行信息 } newElem += "
" + (i + 1) + " " + loadMsg + " " + strTime + "
"; // 给table闭合 var target = document.getElementById(id); target.innerHTML = newElem;}// 清除数据function clearStorage(id) { localStorage.clear(); // 清除loaclStorage loadStorage('msg');}

<<index.html>>

            

留言板


转载于:https://www.cnblogs.com/hughdong/p/7229343.html

你可能感兴趣的文章
javascript Error对象详解
查看>>
nc 局域网聊天+文件传输(netcat)
查看>>
每天一个linux命令(25):linux文件属性详解
查看>>
go微服务框架go-micro深度学习(三) Registry服务的注册和发现
查看>>
在Fedora8上安装MySQL5.0.45的过程
查看>>
设计模式之命令模式
查看>>
Spring AOP项目应用——方法入参校验 & 日志横切
查看>>
使用REST-Assured对API接口进行自动化测试
查看>>
王潮歌跨界指导HUAWEI P20系列发布会 颠覆传统 眼界大开!
查看>>
王高飞:微博已收购一直播 明年一季度重点是功能与流量打通
查看>>
新北市长侯友宜:两岸交流应从隔壁最亲近的人开始
查看>>
全面屏的Nokia X即将上线,不到2000元的信仰你要充值吗?
查看>>
HTML5音频audio属性
查看>>
ES6学习
查看>>
序列化一个Intent
查看>>
JavaScript数据类型及语言基础--ife
查看>>
进阶 Nginx 高手必须跨越的 5 座大山
查看>>
部署P2P升级的脚本
查看>>
ubuntu下安装libxml2
查看>>
nginx_lua_waf安装测试
查看>>