zoukankan      html  css  js  c++  java
  • sessionStorage、localStorage与cookie

    HTML5的WebStorage提供了两种API:localStorage(本地存储)和sessionStorage(会话存储)。

    sessionStorage与localStorage区别:

    1.sessionStorage在浏览器关闭后自动销毁;而localStorage无期限,除非主动删除。

    2.sessionStorage由于上述特性,也就不能够在不同页面之间进行数据共享,同一域名也是不可以的;

    localStorage则能够实现该需求,但是仅限于同一域名下;

    两者的用法相似:

    // 保存或设置数据到sessionStorage
    sessionStorage.setItem('key','value')
        
    // 获取某个sessionStorage
    sessionStorage.getItem('key')
        
    // 从sessionStorage删除某个保存的数据
    sessionStorage.removeItem('key')
        
    // 从sessionStorage删除所有保存的数据
    sessionStorage.clear();
    // 保存或设置数据到localStorage
    localStorage.setItem('key','value')
        
    // 获取某个localStorage
    localStorage.getItem('key')
        
    // 从localStorage删除某个保存的数据
    localStorage.removeItem('key')
        
    // 从localStorage删除所有保存的数据
    localStorage.clear();

    sessionStorage、localStorage与cookie区别:

    1.cookie在浏览器和服务器端来回传递数据,这样无形中浪费了带宽。而localStorage和sessionStorage不会自动把数据发送给服务器,仅会保存在本地;

    2.存储大小限制不同,cookie数据不能超过4K,同时因为每次http请求都会携带cookie、所以cookie只适合保存很小的数据,如会话标识。sessionStorage和localStorage虽然也有存储大小的限制,但比cookie大得多,可以达到5M或更大;

    3.数据有效期不同,sessionStorage:仅在当前浏览器窗口关闭之前有效;localStorage:始终有效,窗口或浏览器关闭也一直保存,因此用作持久数据;cookie:只在设置的cookie过期时间之前有效,即使窗口关闭或浏览器关闭;

    4.作用域不同,sessionStorage不在不同的浏览器窗口中共享,即使是同一个页面;localstorage在所有同源窗口中都是共享的;cookie也是在所有同源窗口中都是共享的;

    5.web storage拥有setItem,getItem,removeItem,clear等方法,不像cookie需要前端开发者自己封装setCookie,getCookie。

  • 相关阅读:
    Apache 虚拟主机 VirtualHost 配置
    EAX、ECX、EDX、EBX寄存器的作用
    Python中文文档 目录(转载)
    八度
    POJ 3268 Silver Cow Party (最短路)
    POJ 2253 Frogger (求每条路径中最大值的最小值,Dijkstra变形)
    2013金山西山居创意游戏程序挑战赛——复赛(1) HDU 4557 非诚勿扰 HDU 4558 剑侠情缘 HDU 4559 涂色游戏 HDU 4560 我是歌手
    HDU 4549 M斐波那契数列(矩阵快速幂+欧拉定理)
    UVA 11624 Fire! (简单图论基础)
    HDU 3534 Tree (树形DP)
  • 原文地址:https://www.cnblogs.com/zard23/p/9131707.html
Copyright © 2011-2022 走看看