10.本地存储.html 3.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081
  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8">
  5. <meta name="viewport" content="width=device-width, initial-scale=1.0">
  6. <title>Document</title>
  7. </head>
  8. <body>
  9. <!--
  10. cookie 与 webStorage的区别
  11. 1.cookie会与服务器交互(速度变慢);
  12. 2.cookie储存大小约4kb;
  13. 3.webStorage是把数据储存到客户端,不会和服务器交互,可随机获取(速度快);
  14. 4.webStorage储存大小是5MB,可储存的数据更大;
  15. 注意:webStorage就是为了弥补cookie的缺陷;
  16. 5.对于临时存储的数据使用sessionStorage更方便;
  17. 6.webStorage不参与服务器通信,储存在本地更安全;
  18. 7.webStorage中的键值对必须是字符串;使用时需要转JS对象;
  19. -->
  20. <!--
  21. webStorage: 5MB 不和服务端交互 速度更快 存在独立域
  22. 缺点:不同域之间无法访问 数据如果不删除 会长期存在 缺乏安全性
  23. 本地存储:localStorage 只要不手动删除 就会一直存在
  24. 会话存储: sessionStorage 只要关闭页面 数据自动销毁
  25. -->
  26. <!--
  27. 1.存放数据:
  28. 1.localStorage/sessionStorage.settItem("属性名","属性值");
  29. 2.localStorage/sessionStorage.属性名 = 属性值;
  30. 3.localStorage/sessionStorage["属性名"] = 属性值;
  31. 2.读取数据:
  32. 1.localStorage/sessionStorage.getItem("属性名");
  33. 2.localStorage/sessionStorage.属性名;
  34. 3.localStorage/sessionStorage["属性名"];
  35. 3.删除一条数据
  36. 语法:localStorage/sessionStorage.removeItem("属性名");
  37. 4.清除所有的数据
  38. 语法:localStorage/sessionStorage.clear();
  39. 5.得到某个索引的key;
  40. 语法:localStorage/sessionStorage.key(下标);//注意:下标是整数;
  41. 例如:localStorage/sessionStorage.key(0);//得到第一个数据的属性名;
  42. 检测某个属性是否是私有属性(非继承)
  43. 语法:对象.hasOwnProperty("属性名");
  44. -->
  45. <button id="btn1">删除名字</button>
  46. <button id="btn2">清除所有数据</button>
  47. <button id="btn3">获取年龄</button>
  48. <script>
  49. var btn1 = document.getElementById("btn1");
  50. var btn2 = document.getElementById("btn2");
  51. var btn3 = document.getElementById("btn3");
  52. // 必须是字符串键值对
  53. let obj1 = {
  54. a:"哈哈",
  55. b:"大大"
  56. }
  57. sessionStorage.setItem("obj",JSON.stringify(obj1));
  58. console.log(sessionStorage.key(0))
  59. console.log(JSON.parse(sessionStorage.getItem("obj")));
  60. sessionStorage.setItem("name","明明");
  61. sessionStorage.age = 18;
  62. sessionStorage['sex'] = '女'
  63. console.log(sessionStorage.getItem("name"));
  64. console.log(sessionStorage.age);
  65. console.log(sessionStorage["sex"]);
  66. btn1.onclick = () =>{
  67. sessionStorage.removeItem("name");
  68. }
  69. btn2.onclick = () => {
  70. sessionStorage.clear();
  71. }
  72. btn3.onclick = () => {
  73. console.log(sessionStorage.key(1));
  74. }
  75. console.log(sessionStorage.hasOwnProperty('name1'))
  76. </script>
  77. </body>
  78. </html>