JavaScript Cookie属性
JavaScript提供了一些可选属性来增强cookie的功能。这是一些属性及其说明的列表。
属性 |
说明 |
expires |
它将cookie的状态一直保持到指定的日期和时间。 |
max-age |
它一直保持cookie的状态到指定的时间。在这里,时间以秒为单位。 |
path |
它将Cookie的范围扩展到网站的所有页面。 |
domain |
它用于指定cookie有效的域。 |
Cookie expires属性
cookie expires属性提供了一种创建持久性cookie的方法。在此,声明代表cookie有效期的日期和时间。一旦经过声明的时间,就会自动删除cookie。
让我们看一个cookie expires属性的例子。
<!DOCTYPE html>
<html>
<head>
</head>
<body>
<input type="button" value="setCookie" onclick="setCookie()">
<input type="button" value="getCookie" onclick="getCookie()">
<script>
function setCookie()
{
document.cookie="username=Duke Martin;expires=Sun, 20 Aug 2030 12:00:00 UTC";
}
function getCookie()
{
if(document.cookie.length!=0)
{
var array=document.cookie.split("=");
alert("Name="+array[0]+" "+"Value="+array[1]);
}
else
{
alert("Cookie not available");
}
}
</script>
</body>
</html>
Cookie max-age属性
cookie max-age属性提供了另一种创建持久性cookie的方法。在这里,时间以秒为单位。 Cookie仅在声明的时间内有效。
让我们看一个cookie max-age属性的示例。
<!DOCTYPE html>
<html>
<head>
</head>
<body>
<input type="button" value="setCookie" onclick="setCookie()">
<input type="button" value="getCookie" onclick="getCookie()">
<script>
function setCookie()
{
document.cookie="username=Duke Martin;max-age=" + (60 * 60 * 24 * 365) + ";"
}
function getCookie()
{
if(document.cookie.length!=0)
{
var array=document.cookie.split("=");
alert("Name="+array[0]+" "+"Value="+array[1]);
}
else
{
alert("Cookie not available");
}
}
</script>
</body>
</html>
Cookie path属性
如果为网页创建了cookie,则默认情况下,它仅对当前目录和子目录有效。 JavaScript提供了一个path属性,可将cookie的范围扩展到网站的所有页面。
Cookie路径属性示例
让我们了解使用
在这里,如果我们为webpage2创建一个cookie。 html,仅对其自身及其子目录(即webpage3.html)有效。对于webpage1.html文件无效。
在此示例中,我们使用path属性来增强cookie对所有页面的可见性。在这里,您只需要维护上面的目录结构,并将下面的程序放在所有三个网页中即可。现在,该cookie对每个网页均有效。
<!DOCTYPE html>
<html>
<head>
</head>
<body>
<input type="button" value="setCookie" onclick="setCookie()">
<input type="button" value="getCookie" onclick="getCookie()">
<script>
function setCookie()
{
document.cookie="username=Duke Martin;max-age=" + (60 * 60 * 24 * 365) + ";path=/;"
}
function getCookie()
{
if(document.cookie.length!=0)
{
var array=document.cookie.split("=");
alert("Name="+array[0]+" "+"Value="+array[1]);
}
else
{
alert("Cookie not available");
}
}
</script>
</body>
</html>
Cookie domain属性
JavaScript域属性指定cookie对其有效的域。假设我们是否向属性提供任何域名,例如:
在此,该cookie对给定域及其所有子域均有效。
但是,如果我们为属性提供任何子域,例如:
omain=training.lidihuo.com
在此,该cookie仅对给定的子域有效。因此,这是提供域名而不是子域的更好方法。