ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

cookie、sessionStoreage、localStorage

2021-04-12 22:05:28  阅读:227  来源: 互联网

标签:key sessionStorage cookieName sessionStoreage cookie exp localStorage


cookie、sessionStoreage、localStorage

  作用与特性 存储数量及大小 api
cookie

● 存储用户信息,获取数据需要与服务器建立连接。

● 可存储的数据有限,且依赖于服务器,无需请求服务器的数据尽量不要存放在cookie中,以免影响页面性能。

● 可设置过期时间。

● 最好将cookie控制在4095B以内,超出的数据会被忽略。

● IE6或更低版本最多存20个cookie; IE7及以上版本最多可以有50个;Firefox最多50个;chrome和Safari没有做硬性限制。


//设置cookie,改cookie也用同一个,覆盖原值
function setCookie(cookieName, cookieValue) {
var expires = "1"; //过期时间,此处设置有效期为1天
var exp = new Date();
exp.setTime(exp.getTime() + expires * 24 * 60 * 60 * 1000); //设置失效时间(不设置的话,浏览器关闭后此cookie将丢失)
document.cookie = cookieName + "=" + escape(cookieValue) + ";expires=" + exp.toGMTString() + ";path=" + "/";
}

 

//读取cookie
function getCookie(cookieName){
var arr,reg=new RegExp("(^| )"+cookieName+"=([^;]*)(;|$)");
if(arr=document.cookie.match(reg))
return unescape(arr[2]);
else
return null;
}


//删除cookie
function delCookie(cookieName ){
var exp = new Date();
exp.setTime(exp.getTime() - 1);
var cval=getCookie(cookieName );
if(cval!=null)
document.cookie= cookieName + "="+cval+";expires="+exp.toGMTString()+";path="+"/";

 

 

sessionStorage

● 存储客户端信息,无需请求服务器。

● 数据保存在当前会话,刷新页面数据不会被清除,结束会话(关闭浏览器、关闭页面、跳转页面)数据失效。

5M左右,各浏览器的存储空间有差异。

// 保存数据到 sessionStorage

sessionStorage.setItem('key', 'value');

// 从 sessionStorage 获取数据

let data = sessionStorage.getItem('key');

// 从 sessionStorage 删除保存的数据

sessionStorage.removeItem('key');

// 从 sessionStorage 删除所有保存的数据

sessionStorage.clear();

localStorage

● 存储客户端信息,无需请求服务器。

● 数据永久保存,除非用户手动清理客户端缓存。

● 开发者可自行封装一个方法,设置失效时间。

同sessionStorage

// 保存数据到 localStorage

localStorage.setItem('key', 'value');

// 从 localStorage 获取数据

let data = localStorage.getItem('key');

// 从 localStorage 删除保存的数据

localStorage.removeItem('key');

// 从 localStorage 删除所有保存的数据

localStorage.clear();

 

标签:key,sessionStorage,cookieName,sessionStoreage,cookie,exp,localStorage
来源: https://www.cnblogs.com/alex-xxc/p/14650420.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有