JS Cookie

Cookie :存储数据

1: 不同的brwoser 存放的位置不同

2: Cookie以域名的形式存储

3: Cookie数据是可以设置名字的 如 document.cookie = "name=leo"

4: 同一个域名下存放的cookie个数是有限制的,不同的browser个数是不同的

5: 每一个cookie的内容大小也是有限制的,不同的browser限制不同

6: Cookie内容推荐编码存放 encodeURI(), 通过decodeURI(解码)

 

通过document.cookie来获取cookie的时候,得到的是字符串形式的值,包含了当前网站下的所有cookie,把所有的cookie用分号+空格的形式串联起来

如果想长时间存放cookie的话,在设置cookie的时候,要同时设置一个过期时间 document.cookie = '名称=值; expires=' + 时间.toGMTString();

cookie默认是临时存储。即生命周期为browser的生命周期

复制代码
 1       /// 设置cookie key, value 过期时间
 2       function setCookie(key, value, t) {
 3         var oDate = new Date();
 4         oDate.setDate(oDate.getDate() + t);
 5         document.cookie = key + '=' + encodeURI(value) + ';expires=' + oDate.toGMTString();
 6       }
 7 
 8       /// 获取单个cookie, 通过key
 9       function getCookie(key) {
10         var str = document.cookie;
11         var arr1 = str.split('; ');
12         for (var i = 0; i < arr1.length; i++) {
13           var arr2 = arr1[i].split('=');
14           if (arr2[0] == key) {
15             return decodeURI(arr2[1]);
16           }
17         }
18       }
19       /// 删除指定的cookie
20       function removeCookie(key) {
21         setCookie(key, '', -1);
22       }
复制代码

 

posted @   jisa  阅读(154)  评论(0编辑  收藏  举报
编辑推荐:
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
阅读排行:
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
点击右上角即可分享
微信分享提示