要检查cookie是否存在或不存在,可以使用JavaScript的document.cookie属性。
以下是一个示例代码,演示如何检查cookie是否存在或不存在:
// 检查cookie是否存在
function checkCookieExists(cookieName) {
// 获取所有cookie并分割为一个数组
var cookies = document.cookie.split(';');
// 遍历cookie数组
for (var i = 0; i < cookies.length; i++) {
var cookie = cookies[i];
// 去除cookie的空格
while (cookie.charAt(0) === ' ') {
cookie = cookie.substring(1);
}
// 检查cookie的名称是否匹配
if (cookie.indexOf(cookieName + '=') === 0) {
return true; // cookie存在
}
}
return false; // cookie不存在
}
// 使用示例
var cookieExists = checkCookieExists('myCookie');
if (cookieExists) {
console.log('Cookie存在');
} else {
console.log('Cookie不存在');
}
在上面的示例中,我们定义了一个名为checkCookieExists的函数,它接受一个cookie的名称作为参数。函数首先使用document.cookie获取所有cookie,并将其分割为一个数组。然后,它遍历cookie数组,去除每个cookie的空格,并检查cookie的名称是否与指定的cookie名称匹配。如果找到匹配的cookie,函数返回true,表示cookie存在;否则,返回false,表示cookie不存在。
请注意,document.cookie属性返回一个包含所有cookie的字符串,每个cookie之间用分号分隔。每个cookie都以名称=值的形式存储,例如:cookieName=cookieValue。因此,我们使用indexOf方法来检查字符串中是否包含指定的cookie名称。如果indexOf返回0,表示cookie名称在字符串的开头,即找到了匹配的cookie。