插件窝 干货文章 JavaScript 删除cookie

JavaScript 删除cookie

cookie js 801    来源:插件窝    2019-10-08

实际应用中,可能需要删除写入本地硬盘的cookie。默认情况下,cookie会在关闭浏览器结束会话的时候自动删除。不过,往往我们需要设定cookie的在硬盘中留存时间,也就是过期时间。超过这个时间,cookie就会被自动删除。通过expires设置cookie的过期时间。


语法结构:

document.cookie="name=value;expires=date"

注意:这里date格式是GMT(格林威治时间)格式的日期型字符串。


封装代码如下:


//取cookies     
function getCookie(name){
  let arr = document.cookie.match(new RegExp("(^| )" + name + "=([^;]*)(;|$)"));
  if (arr != null) return unescape(arr[2]); 
  return null;
}
//删除cookie
function delCookie(name){
  var exp = new Date();
  exp.setTime(exp.getTime() - 1);
  var cval = getCookie(name);
  if (cval != null) document.cookie = name + "=" + cval + ";expires=" + exp.toGMTString();
}



上面代码可以马上删除一个cookie,因为将指定cookie设置为立马过期。

注意:如果要删除的是全域cookie,一定要在document.cookie补全path=/;否则无法删除

例如:

if (cval != null)
document.cookie = name + "=" + cval + ";expires=" + exp.toGMTString()+";path=/;";


cookie的写入与读取详解 戳:http://www.chajianwo.com/blog-134.html