首页 > 其他分享 >浏览器端存储

浏览器端存储

时间:2023-06-05 17:11:29浏览次数:34  
标签:function 存储 浏览器 sessionStorage value setItem localStorage

ES标准里,浏览器端保存数据,可以使用以下两种存储方式:

sessionStorage (会话存储) 和 localStorage(本地存储)

这两种存储,都是以键/值对的形式存储内容。

生命周期不同(session为会话期间有效,local为永久有效),用法相同。

属性:

length:返回存储对象中包含多少条数据。
方法:
key(n):返回存储对象中第 n 个键的名称(从0开始),即keyname。
getItem(keyname): 返回指定键的值。
setItem(keyname,value):添加键和值,如果对应的键存在,则更新该键对应的值。
removeItem(keyname):移除键/值对。
clear():清除存储对象中所有的键/值对。

例:

html

 1 <!DOCTYPE html>
 2 <html>
 3     <head>
 4         <meta charset="utf-8" />
 5         <title></title>
 6         <script src="js/1.js"></script>
 7     </head>
 8     <body onl oad="myinit()">
 9         <p id="p1"></p>
10         key:<input type="text" id="t1"/>value:<input type="text" id="t2"/><br />
11         <input type="button" value="init" onclick="f0();"/>
12         <input type="button" value="add/update" onclick="f1();"/>
13         <input type="button" value="delete" onclick="f2();"/>
14         <input type="button" value="clear" onclick="f3();"/>
15     </body>
16 </html>

js

 1 let myp;
 2 let myt1;
 3 let myt2;
 4 function myinit()
 5 {
 6     myp=document.querySelector("#p1");
 7     myt1=document.querySelector("#t1");
 8     myt2=document.querySelector("#t2");
 9     disp();
10 }
11 function f0()
12 {
13     localStorage.setItem("xm","zs");
14     localStorage.setItem("nl",18);
15     sessionStorage.setItem("xm","ls");
16     sessionStorage.setItem("nl",19);
17     disp();
18 }
19 function f1()
20 {
21     k1=myt1.value;
22     v1=myt2.value;
23     localStorage.setItem(k1,v1);
24     sessionStorage.setItem(k1,v1);
25     disp();
26 }
27 function f2()
28 {
29     k1=myt1.value;
30     localStorage.removeItem(k1);
31     sessionStorage.removeItem(k1);
32     disp();
33 }
34 function f3()
35 {
36     localStorage.clear();
37     sessionStorage.clear();
38     disp();
39 }
40 function disp()
41 {
42     let t="";
43     t+="localStorage:";
44     t+=dispcontent("local");
45     t+="<br />--------------------------------";
46     t+="<br />sessionStorage:";
47     t+=dispcontent("session");
48     myp.innerHTML=t;
49 }
50 function dispcontent(t)
51 {
52     let mykey;
53     let mydisp="";
54     if(t=="session")
55     {
56         for(i=0;i<sessionStorage.length;i++)
57         {
58             mykey=sessionStorage.key(i);
59             mydisp+="<br />";
60             mydisp+="key:"+mykey+",value:"+sessionStorage.getItem(mykey);
61         }
62     }
63     else if(t=="local")
64     {
65         for(i=0;i<localStorage.length;i++)
66         {
67             mykey=localStorage.key(i);
68             mydisp+="<br />";
69             mydisp+="key:"+mykey+",value:"+localStorage.getItem(mykey);
70         }
71     }
72     return mydisp;
73 }

运行效果(关闭后重新打开浏览器)

 (完)

标签:function,存储,浏览器,sessionStorage,value,setItem,localStorage
From: https://www.cnblogs.com/wanjinliu/p/17458305.html

相关文章

  • GaussDB存储过程介绍
    前言华为云数据库GaussDB是一款高性能、高安全性的云原生数据库,在数据库领域处于领先地位。而在GaussDB中,存储过程是一个不容忽视的重要功能。本文将深入介绍GaussDB存储过程的使用场景、使用优缺点、示例及示例解析、调用方法等方面,为读者提供全方位的指导与帮助。存储过程是一个......
  • helm从Harbor存储的chart发布服务
    李大白-作者......
  • Jwt生成和解析工具类(万用版,可作为数据存储容器来传输)
    packagecom.ciih.authcenter.client.util.jwt;importcom.alibaba.fastjson.JSON;importcom.auth0.jwt.JWT;importcom.auth0.jwt.JWTCreator;importcom.auth0.jwt.JWTVerifier;importcom.auth0.jwt.algorithms.Algorithm;importcom.auth0.jwt.interfaces.Claim;......
  • 浏览器请求转换成Postman和postman请求转Java/JS.等后端代码
     unirest为例:<!--与postman非常友好的RPC框架--><dependency><groupId>com.konghq</groupId><artifactId>unirest-java</artifactId><version>3.5.00</version></depend......
  • 数据万象 | AIGC 存储内容安全解决方案
    AIGC(人工智能生产内容)已经成为与PGC(专业生产内容)、UGC(用户生产内容)并驾齐驱的内容生产方式。由于AI的特性,AIGC在创意、个性化、生产效率等方面具有独特的优势,这些优势可以使得高质量的内容制作更简单,但也会帮助恶意份子更高效地炮制违法违规内容。数据万象从AIGC的输入、生产......
  • Flutter get_storage本地存储
    倪大头关注IP属地:山东0.0972021.09.0818:01:18字数84阅读4,451之前本地存储用的是shared_preferences,但它的存取都是异步的,现在推荐一个Getx提供的本地存储插件get_storagedependencies:get_storage:import'package:get_storage/get_storage.dart';需要......
  • c语言基于链表的文件存储与读取
    今天写了一下如何将链表中的数据存储到文件中head为链表的起始结点写入文件voidfilewirte(LinkListhead){LinkListfd;FILE*p=fopen("student_grad.txt","w");if(p==NULL){printf("没有东西");getchar();exit(1);}fd=head......
  • 浏览器中跑定时器跑着跑着就慢了(离开当前页面,再次进来后时间会慢一点)
    最近再写一个考试系统,到点交卷,在手机上跑定时器是没问题的,在浏览器上跑的时候,一离开页面(指切换标签页),再次回来时间就会慢很多关于浏览器变慢的原因是,当离开当前页面时,cpu检测到你不在当前页面,为了节省资源,会放慢浏览器的时间。导致进入页面,时间变慢。有没有解决办法呢,当然是有的......
  • oracle 分页 存储过程
    createorreplacepackagetestpackageastypetest_cursorisrefcursor;endtestpackage;createorreplaceprocedurefenye(tableNameinvarchar2,pageSizeinnumber,pageNowinnumber,myRowCountoutnumber,myPageCountoutnumber,p_cursorouttestpack......
  • PXE(Preboot eXecution Environment)是一种通过网络引导计算机的协议,可以在没有本地存储
    PXE(PrebooteXecutionEnvironment)是一种通过网络引导计算机的协议,可以在没有本地存储设备或可启动介质的情况下从网络上加载操作系统和应用程序。PXE版本因厂商或标准制定者的不同而有所不同。以下是常见的PXE版本及其大致年代:PXE1.0:最早的PXE版本,于1999年左右推出。PXE2......