×

回忆下JavaScript 三大数据存储方法:localStorage、sessionStorage、cookie

作者:andy0012022.04.08来源:Web前端之家浏览:4292评论:0

回忆下JavaScript 三大数据存储方法:localStorage、sessionStorage、cookie。

localStorage 本地存储

  1. // 设置
  2. window.localStorage.setItem(key, value);
  3.  
  4. // 获取
  5. window.localStorage.getItem(key);
  6.  
  7. // 删除 指定的
  8. window.localStorage.removeItem(key);
  9.  
  10. // 删除 所有的
  11. window.localStorage.clear();

sessionStorage 会话存储

  1. // 设置
  2. window.sessionStorage.setItem(key, value);
  3.  
  4. // 获取
  5. window.sessionStorage.getItem(key);
  6.  
  7. // 删除 指定的
  8. window.sessionStorage.removeItem(key);
  9.  
  10. // 删除 所有的
  11. window.sessionStorage.clear();

cookie

cookie 常用的属性

expires 属性 和 Max-Age 属性都可以用来定义 cookie 的有效时间,一起使用 Max-Age 的优先级更高。

image.png

cookie 的设置、获取、删除

  1. // 设置 cookie
  2. // 不是覆盖整个 cookie,而是: 原cookie + cname=cvalue; (同名修改,异名添加)
  3. function setCookie(cname,cvalue,exdays){
  4.     var d = new Date();
  5.     d.setTime(d.getTime()+(exdays*24*60*60*1000));
  6.     var expires = "expires="+d.toGMTString();
  7.     document.cookie = cname+"="+cvalue+"; "+expires;
  8. }
  9.  
  10. // 获取 cookie 中的某个参数值
  11. function getCookie(cname){
  12.     var name = cname + "=";
  13.     var ca = document.cookie.split(';');
  14.     for(var i=0; i<ca.length; i++) {
  15.         var c = ca[i].trim();
  16.         if (c.indexOf(name)==0) { return c.substring(name.length,c.length); }
  17.     }
  18.     return "";
  19. }
  20.  
  21. // 获取整个 cookie
  22. // document.cookie
  23.  
  24. // 检测 cookie 中的某个参数值是否存在
  25. function checkCookie(cname){
  26.     var user=getCookie("cname");
  27.     if (user!=""){
  28.         return true
  29.        // 存在
  30.     }else {
  31.         return false
  32.        // 不存在
  33.     }
  34. }
  35.  
  36. //清除 cookie
  37. // 将过期时间调整到以前,即可删除 cookie
  38. function clearCookie(cname) {
  39.     setCookie(cname, "", -1);
  40. }

启动本地服务进行测试

  1. // 1. 全局安装 http-server
  2. cnpm install http-server -g
  3.  
  4. // 2. cmd 打开本地项目文件夹
  5. http-server -9090
  6.  
  7. // 3. 浏览器打开本地项目
  8. http://localhost:9090/本地文件.html

localStorage、sessionStorage、cookie 对比

image.png

您的支持是我们创作的动力!
温馨提示:本文作者系 ,经Web前端之家编辑修改或补充,转载请注明出处和本文链接:
https://jiangweishan.com/article/js20220408a1.html

网友评论文明上网理性发言 已有0人参与

发表评论: