javascript 怎样清除cookie

如题所述

js清除cookie的方法一般是有两种方法。

1、一个是通过删除cookie的所有变量,其cookie也就随之被清除。代码实例如下:

script type="text/javascript">    
       //获得cookie函数    
       console.log(document.cookie);    
       function getCookie($name){    
         var data=document.cookie;    
         var dataArray=data.split("; ");    
       for(var i=0;i<dataArray.length;i++){    
       var varName=dataArray[i].split("=");    
         if(varName[0]==$name){    
           return decodeURI(varName[1]);    
         }       
    
         }    
      }    
       //删除cookie中所有定变量函数    
       function delAllCookie(){    
         var myDate=new Date();    
         myDate.setTime(-1000);//设置时间    
         var data=document.cookie;    
         var dataArray=data.split("; ");    
         for(var i=0;i<dataArray.length;i++){    
           var varName=dataArray[i].split("=");    
           document.cookie=varName[0]+"=''; expires="+myDate.toGMTString();    
         }    
                     
      }          
      alert(getCookie("wangsan"));    
      alert(getCookie("lisi"));    
      delAllCookie();//删除所有cookie变量    
      alert(getCookie("wangsan"));    
      alert(getCookie("lisi"));    
</script>

2、同过设置过期时间来使cookie过期以间接达到清除的目的或者将其内容设置为空,。代码实例如下:

<script type="text/javascript">    
       //获得cookie函数    
       console.log(document.cookie);    
       function getCookie($name){    
         var data=document.cookie;    
         var dataArray=data.split("; ");    
       for(var i=0;i<dataArray.length;i++){    
       var varName=dataArray[i].split("=");    
         if(varName[0]==$name){    
           return decodeURI(varName[1]);    
         }       
    
         }    
      }    
       //删除cookie中指定变量函数    
       function delCookie($name){    
         var myDate=new Date();    
         myDate.setTime(-1000);//设置时间    
         document.cookie=$name+"=''; expires="+myDate.toGMTString();             
      }          
      alert(getCookie("wangsan"));    
      alert(getCookie("lisi"));    
      delCookie("wangsan")    
      alert(getCookie("wangsan"));    
      alert(getCookie("lisi"));    
</script>
温馨提示:答案为网友推荐,仅供参考
第1个回答  2018-03-30

原来一直以为只要设置javascript的document.cookie对象就能简单的在浏览器端设置和删除cookie值,网上很多文章也是这么教的,但是最近发现简单的设置javascript的

document.cookie的值无法完全做到删除或更改cookie。偶然发现了一篇文章给出了正确的方法,这里贴出来。使用JavaScript清理Cookie首先要找到该Cookie对应的Name对应的值,然后设置其为过期: 

找到Cookie有下面方法:找到后设置为过期,切记设置domain和path,只有这两个参数跟你要删除的参数完全一样才能把它删除掉。

至于如何详细查看cookie的path和domain之类的东西,在firefox中可以根据以下步骤查看: 
Tools->Option->Privacy->Show Cookie

本回答被网友采纳
第2个回答  2016-05-07
1、删除cookies
删除cookie的思想很简单,就是将cookie的过期时间设置为过期(-1),已经过了一天。那么就能实现了,当然了需要调用设置cookie的函数setCookie。
代码如下:
function removeCookie(name){
/* -1 天后过期即删除 */
setCookie(name, 1, -1);
}

2:删除所有cookie

function clearCookie(){
var keys=document.cookie.match(/[^ =;]+(?=\=)/g);
if (keys) {
for (var i = keys.length; i--;)
document.cookie=keys[i]+'=0;expires=' + new Date( 0).toUTCString()
}
}本回答被网友采纳
第3个回答  2018-04-19
相似回答