JS操作Cookie

什么是 Cookie

cookie 是一些数据,存在于你的电脑上的文本文件中。当 web 服务器向浏览器发送页面时,当页面关闭,服务器是不会记录相关用户的信息,比如,用户的账户名,密码,或者是访问的时间等,为了解决这个问题,提出了 cookie。cookie 的作用就是解决:客户端存放用户信息

  • 当用户访问页面时,cookie 可以存放用户信息
  • 当用户下次访问页面时,可以从 cookie 读取用户信息

cookie 是以名 / 值对形式存储的
username = tom
当浏览器从服务器请求页面时,该页面的 cookie 会被添加到请求中,服务端通过这种方式来读取用户信息。

利用 JS 来创建,读取,修改,删除 Cookies

创建: document.cookie = "username = tom";
读取: let cookies = document.cookie;
修改: document.cookie = "username = ann";
删除:document.cookie = "username=;expires=Thu,01 Jan 1970 00:00:00 GMT";
修改类似于创建 cookie,创建后,直接覆盖掉原来原有的 cookie。
删除只需将 expires 过期时间设置为以前即可

Cookie 字符串

Cookie 并不是一个字符串,当 document.cookie 被重新设置时,旧的 Cookie 不会被覆盖,而是传入添加到原来的 cookie 中

Cookie 简单的使用

输入用户名,传入 Cookie 中,下次访问时直接从 cookie 中读取用户名数据并输出

function setCookie(cname,cvalue,ctime){
  let time = new Date();
  time.setTime(time.getTime() + ctime*24*60*60*1000);
  let expires = "expires" + time.toGMTString();
  document.cookie = cname + "=" + cvalue + ";" + expires;
}

function getCookie(cname){
  let name = cname + "=";
  let ca = document.cookie.split(';');
  for(let i = 0; i < ca.length ; i++){
    let item = ca[i].trim();
    if(item.indexOf(name) == 0){
      return item.substring(name.length,item.length);
    }
  }
  return "";
}

function checkCookie(){
  let user = getCookie("username");
  if(user!=""){
    alert("welcome"+user);
  }else {
    let user = prompt("pls enter your name:","");
    if(user != "" && user != null){
      setCookie("username",user,30);
    }
  }
}

window.onload = function(){
  checkCookie();
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值