JavaScript Cookie属性

JavaScript Cookie属性

JavaScript提供了一些可选的属性,以增强cookie的功能。下面是一些属性及其描述的列表。

属性 描述
expires 它维护了一个cookie的状态直至指定的日期和时间。
max-age 它维护了一个cookie的状态直至指定的时间。这里,时间以秒为单位。
path 它扩展了cookie的范围到网站的所有页面。
domain 它用于指定cookie有效的域。

Cookie过期属性

Cookie过期属性提供了创建持久性Cookie的一种方式。在这里,声明了一个表示Cookie的活动期的日期和时间。一旦过了声明的时间,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;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路径属性

如果为一个网页创建了一个cookie,默认情况下,它只对当前目录和子目录有效。JavaScript提供了一个路径属性,可以将cookie的范围扩展到网站的所有页面。

Cookie路径属性示例

让我们通过一个示例来了解路径属性的用法。

JavaScript Cookie属性

在这里,如果我们为webpage2.html创建一个cookie,它只对自己和它的子目录(即webpage3.html)有效。它对webpage1.html文件无效。

在这个示例中,我们使用路径属性来增强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域属性

JavaScript的域属性指定了cookie有效的域名。假设我们给属性提供任何域名,比如:

domain=javatpoint.com

在这里,Cookie 对给定域和其所有子域都是有效的。

然而,如果我们给属性提供任何子域,比如:

omain=training.javatpoint.com

在这里,Cookie仅对指定的子域名有效。因此,提供域名而不是子域名是更好的做法。

Camera课程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

办公软件教程

Linux教程

计算机教程

大数据教程

开发工具教程