我创建cookie的功能正确吗?如何删除程序开头的cookie ?有简单的编码吗?
function createCookie(name,value,days)
function setCookie(c_name,value,1) {
document.cookie = c_name + "=" +escape(value);
}
setCookie('cookie_name',mac);
function eraseCookie(c_name) {
createCookie(cookie_name,"",-1);
}
以下是Mozilla支持unicode的删除cookie函数的实现:
function removeItem(sKey, sPath, sDomain) {
document.cookie = encodeURIComponent(sKey) +
"=; expires=Thu, 01 Jan 1970 00:00:00 GMT" +
(sDomain ? "; domain=" + sDomain : "") +
(sPath ? "; path=" + sPath : "");
}
removeItem("cookieName");
如果你使用AngularJs,试试$cookies。删除(下面使用类似的方法):
$cookies.remove('cookieName');
对于只需要一行代码就可以删除cookie的人:
如果您创建了一个cookie,例如在web浏览器控制台与文档。Cookie = "test=hello"
你可以用以下方法删除它:
document.cookie = "test=;expires=" + new Date(0).toUTCString()
或者,如果您喜欢直接编写UTC日期:
document.cookie = "test=;expires=Thu, 01 Jan 1970 00:00:00 GMT"
如果你在与cookie不同的路径上(例如,如果你想删除一个在所有路径上使用的cookie),你可以添加path=/;后测试=;如果您在不同的域(例如,当cookie通过使用.example.com而不是www.example.com为所有子域设置时),您可以添加domain=.example.com;测试=;之后。
更新:而不是expires=…,使用Max-Age=0像在其他答案也工作(用Firefox测试)。