用JavaScript清除所有cookie

用JavaScript清除所有cookie

如何使用JavaScript删除当前域的所有cookie?



拉风的咖菲猫
浏览 6378回答 3
3回答

慕斯王

function&nbsp;deleteAllCookies()&nbsp;{ &nbsp;&nbsp;&nbsp;&nbsp;var&nbsp;cookies&nbsp;=&nbsp;document.cookie.split(";"); &nbsp;&nbsp;&nbsp;&nbsp;for&nbsp;(var&nbsp;i&nbsp;=&nbsp;0;&nbsp;i&nbsp;<&nbsp;cookies.length;&nbsp;i++)&nbsp;{ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;var&nbsp;cookie&nbsp;=&nbsp;cookies[i]; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;var&nbsp;eqPos&nbsp;=&nbsp;cookie.indexOf("="); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;var&nbsp;name&nbsp;=&nbsp;eqPos&nbsp;>&nbsp;-1&nbsp;?&nbsp;cookie.substr(0,&nbsp;eqPos)&nbsp;:&nbsp;cookie; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;document.cookie&nbsp;=&nbsp;name&nbsp;+&nbsp;"=;expires=Thu,&nbsp;01&nbsp;Jan&nbsp;1970&nbsp;00:00:00&nbsp;GMT"; &nbsp;&nbsp;&nbsp;&nbsp;}}请注意,此代码有两个限制:它不会用HttpOnly标志集,如HttpOnly标志禁用Javascript对cookie的访问。它将不会删除已设置为Path价值。(尽管这些cookie将出现在document.cookie,但如果不指定相同的Path)设置它的值。)

潇湘沐

一衬垫如果你想尽快把它粘贴进去.document.cookie.split(";").forEach(function(c)&nbsp;{&nbsp;document.cookie&nbsp;=&nbsp;c.replace(/^&nbsp;+/,&nbsp;"").replace(/=.*/,&nbsp;"=;expires="&nbsp;+&nbsp;new&nbsp;Date(). toUTCString()&nbsp;+&nbsp;";path=/");&nbsp;});以及书签的代码:javascript:(function(){document.cookie.split(";").forEach(function(c)&nbsp;{&nbsp;document.cookie&nbsp;=&nbsp;c.replace(/^&nbsp;+/,&nbsp;"").replace(/=.*/,&nbsp;"=; expires="&nbsp;+&nbsp;new&nbsp;Date().toUTCString()&nbsp;+&nbsp;";path=/");&nbsp;});&nbsp;})();

幕布斯7119047

在经历了一些挫折之后,我自己完成了这个函数,它将尝试从所有路径中删除一个命名的cookie。只需为每个cookie调用它,您就应该更接近于删除每个cookie,而不是以前的每个cookie。function&nbsp;eraseCookieFromAllPaths(name)&nbsp;{ &nbsp;&nbsp;&nbsp;&nbsp;//&nbsp;This&nbsp;function&nbsp;will&nbsp;attempt&nbsp;to&nbsp;remove&nbsp;a&nbsp;cookie&nbsp;from&nbsp;all&nbsp;paths. &nbsp;&nbsp;&nbsp;&nbsp;var&nbsp;pathBits&nbsp;=&nbsp;location.pathname.split('/'); &nbsp;&nbsp;&nbsp;&nbsp;var&nbsp;pathCurrent&nbsp;=&nbsp;'&nbsp;path='; &nbsp;&nbsp;&nbsp;&nbsp;//&nbsp;do&nbsp;a&nbsp;simple&nbsp;pathless&nbsp;delete&nbsp;first. &nbsp;&nbsp;&nbsp;&nbsp;document.cookie&nbsp;=&nbsp;name&nbsp;+&nbsp;'=;&nbsp;expires=Thu,&nbsp;01-Jan-1970&nbsp;00:00:01&nbsp;GMT;'; &nbsp;&nbsp;&nbsp;&nbsp;for&nbsp;(var&nbsp;i&nbsp;=&nbsp;0;&nbsp;i&nbsp;<&nbsp;pathBits.length;&nbsp;i++)&nbsp;{ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;pathCurrent&nbsp;+=&nbsp;((pathCurrent.substr(-1)&nbsp;!=&nbsp;'/')&nbsp;?&nbsp;'/'&nbsp;:&nbsp;'')&nbsp;+&nbsp;pathBits[i]; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;document.cookie&nbsp;=&nbsp;name&nbsp;+&nbsp;'=;&nbsp;expires=Thu,&nbsp;01-Jan-1970&nbsp;00:00:01&nbsp;GMT;'&nbsp;+&nbsp;pathCurrent&nbsp;+&nbsp;';'; &nbsp;&nbsp;&nbsp;&nbsp;}}与以往一样,不同的浏览器有不同的行为,但这对我来说很有效。好好享受吧。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript