博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
JS基础摘录23 - cookie
阅读量:4561 次
发布时间:2019-06-08

本文共 1802 字,大约阅读时间需要 6 分钟。

JS基础摘录23---cookie


cookie

cookie : 浏览器存储数据,当用户访问了某个网站(网页)的时候,我们就可以通过cookie来向访问者电脑上存储数据
1.不同的浏览器存放的cookie位置不一样,也是
不能通用
2.cookie的存储是以
域名形式进行区分的
3.cookie的数据可以设置名字的
4.一个域名下存放的cookie的个数是有限制的,
不同的浏览器存放的个数不一样
5.每个cookie存放的内容大小也是有限制的,
不同的浏览器存放大小不一样

1、访问cookie

要在服务器环境下
我们通过document.cookie来获取当前网站下的cookie的时候,得到的字符串形式的值,他包含了当前网站下所有的cookie。他会把所有的cookie通过一个分号+空格的形式串联起来
  consol.log( document.cookie );

2.存储cookie

    document.cookie = '数据名=值';

3.设置cookie过期时间

cookie
默认是临时存储的,当浏览器关闭进程的时候自动销毁 ,如果我们想长时间存放一个cookie。需要在设置这个cookie的时候同时给他设置一个过期的时间
  • 过期时间必须是一个日期对象转换成的字符串(时间戳.toGMTString())
  document.cookie = ‘数据名=值; expires=过期时间’;
1 var oDate = new Date(); 2 oDate.setDate( oDate.getDate() + 5); 3  4 oDate.toGMTString();//转换为日期字符串 5 document.cookie='age=20; expires='+oDate; 6  7 /*-- document.cookie='sex=man\n你好'; */ 8 //转码 9 10 document.cookie='sex='+content+';expires='+oDate;

4.cookie封装

  • 设置cookie封装
function setCookie(obj,time){     for(key in obj){        var d = new Date();        d.setDate( d.getDate()+time );        document.cookie = key+'='+obj[key]+';                  expires='+d.toUTCString();    }}
setCookie({            name:'hello',            sex:'man',            love:'逛街',             work:'future' },5);

 

  • 获取cookie封装
function getCookie(obj){    var cookie = document.cookie;     // name=hello;    var result = {};    for(key in arguments){        var val = '\\b'+arguments[key]+'=[^;]+';        var reg =new RegExp(val,'i');        val = reg.exec(cookie);        result[arguments[key]] = val? decodeURI(val[1]):null;    }return result;}console.log( getCookie('age','name') );

 

  • 移除cookie
function removeCookie(){    for(key in arguments){         var json ={};         json[arguments[key]]=null;         setCookie(json,-1);    }}removeCookie('name');

 

转载于:https://www.cnblogs.com/hermetic/p/10876651.html

你可能感兴趣的文章
bzoj 1192: [HNOI2006]鬼谷子的钱袋 思维 + 二进制
查看>>
没写完,没调完,咕咕咕的代码
查看>>
Android Studio使用技巧:导出jar包
查看>>
Problem E. TeaTree - HDU - 6430 (树的启发式合并)
查看>>
Kafka序列化和反序列化与示例
查看>>
win10下VS2010中文输入法切换为英文卡死
查看>>
retinex相关代码汇总
查看>>
Cortex-M3 异常返回值EXC_RETURN
查看>>
kettle 转换字段遇到问题(couldn't get row from result set)——摘
查看>>
nginx首页根据IP跳转
查看>>
【2019-08-20】有点目标,有点计划,有点目的
查看>>
【2019-09-10】美,真的跟年龄无关
查看>>
【2019-09-28】少,但更好
查看>>
【2019-09-13】耐心观察是一种技能
查看>>
mysql数据库2-常用命令
查看>>
安卓开发环境搭建(转)
查看>>
Harris角点检测
查看>>
Struts2的处理流程及为Action的属性注入值
查看>>
设计中最常用的CSS选择器
查看>>
Maven项目打包成可执行Jar文件
查看>>