JavaScript 中检查 Cookie 是否存在
cookie
可能是一个简短的文档,它在大约 4KB 的 PC 上存储一些数据。使用 JavaScript,将创建、检索和更改 cookie,并且可以限制 cookie 的值、名称和长度。
本文讨论了 cookies
的概念以及如何使用 JavaScript 检查 cookie
是否存在。
不同类型的 JavaScript cookies
Cookie 分为三种类型:
- 会话 cookie 存储在你的浏览器中。一旦浏览器关闭,它们就会被删除。
- 第一方 cookie 由网站创建,仅供你的网站浏览。
- 第三方 cookie 由你网站上的第三方广告生成。
使用 JavaScript 创建一个 cookie
你可以使用 JavaScript 提供的 document.cookie
属性创建一个 name=value
形式的 cookie
,该属性将允许你一次仅设置一个 cookie。使用此 document.cookie
属性,可以设置、读取和删除 cookies
。
语法:
document.cookie = 'UserName = HelloWorld';
假设你想在创建 cookies
时使用特殊字符。在这种情况下,你需要使用名为 encodeURIComponent()
的 Javascript 提供的内置函数,该函数对分号、空格等特殊字符进行编码。
语法 - encodeURIComponent()
:
document.cookie = 'UserName=' + encodeURIComponent('Hello World!');
默认 cookie 生命周期仅限于当前浏览器会话的持续时间。一旦用户退出浏览器,它就会被删除。
使用 max-age
属性,你可以以秒为单位指定 cookie 在从系统中删除之前可以存储多长时间。
语法 - max-age
:
document.cookie = 'Username = HelloWorld; max-age =' + 15 * 24 * 60 * 60;
这个 cookie
的有效期为 15 天。
有关创建 cookie 的更多信息,请参见 document.cookie 的文档。
使用 JavaScript 读取或检查 cookies
是否存在
document.cookie
属性返回一个字符串,其中包含一个分号和一个以空格分隔的所有 cookies
列表。此字符串不包含任何 cookie 属性,例如过期、路径、域等。
要从此列表中获取单个 cookie
,请使用 split()
方法将其拆分为单独的 name=value
对,然后搜索所需的名称,如下例所示:
function getCookie(user) {
var cookieArr = document.cookie.split(';');
for (var i = 0; i < cookieArr.length; i++) {
var cookiePair = cookieArr[i].split('=');
if (user == cookiePair[0].trim()) {
return decodeURIComponent(cookiePair[1]);
}
}
return null;
}
function checkCookie() {
var user = getCookie('username');
if (user != '') {
alert('Welcome again ' + user);
} else {
user = prompt('Please enter your name:', '');
if (user != '' && user != null) {
setCookie('username', user, 365);
}
}
}
checkCookie();
输出:
// If cookie is set
Welcome again, shraddha
在上面的代码中,我们创建了两个函数:
getCookie()
函数读取 cookie 的值。checkCookie()
函数使用getCookie()
检查用户名是否被设置。
如果已配置,将显示欢迎消息。如果不设置,可以提示用户名并存储在 cookies 中。
相关文章
在 JavaScript 中返回 False
发布时间:2024/03/21 浏览次数:166 分类:JavaScript
-
本文解释 JavaScript 中的 return false 和 preventDefault 语句;何时何地使用这些语句,它们之间有什么区别。
使用 JavaScript 将 HTML 表格导出到 Excel
发布时间:2024/03/21 浏览次数:151 分类:JavaScript
-
本教程演示了如何使用 JavaScript 将 HTML 表格数据导出到 Excel。
用 JavaScript 读取 Excel 文件
发布时间:2024/03/21 浏览次数:87 分类:JavaScript
-
在本文中,我们将了解如何在 JavaScript 中读取和解析 excel 文件。
使用 JavaScript 通过 XPath 获取元素
发布时间:2024/03/21 浏览次数:65 分类:JavaScript
-
本教程介绍如何使用 JavaScript Selenium WebDriver 获取元素 XPath。
使用 JavaScript 删除所有子元素
发布时间:2024/03/21 浏览次数:94 分类:JavaScript
-
本教程将指导你如何使用 JavaScript 删除所有子元素。它也以 jQuery 为例。
使用 JavaScript 将此关键字传递给函数
发布时间:2024/03/21 浏览次数:135 分类:JavaScript
-
本文将帮助你了解 this 关键字对给定 JavaScript 函数的设置。
使用 JavaScript 获取当前 URL
发布时间:2024/03/21 浏览次数:197 分类:JavaScript
-
在本教程中,我们将讨论如何使用四种不同的方法在 JavaScript 中获取 URL。这些方法将使用 window.location.href、document.location.href、document.URL 和 document.baseURI。