二十一天学通JavaScript:cookie的生存期

来源:互联网 发布:淘宝小二介入闲鱼退款 编辑:程序博客网 时间:2024/05/02 04:19
二十一天学通JavaScript:cookie的生存期
本文节选自《21天学通JavaScript》一书

    在默认情况下,cookie是临时存在的。在一个浏览器窗口打开时,可以设置cookie,只要该浏览器窗口没有关闭,cookie就一直有效,而一旦浏览器窗口关闭后,cookie也就随之消失。
如果想要cookie在浏览器窗口关闭之后还能继续使用,就需要为cookie设置一个生存期。所谓生存期也就是cookie的终止日期,在这个终止日期到达之前,浏览器随时都可以读取该cookie。一旦终止日期到达之后,该cookie将会从cookie文件中删除。
【范例14-5】设置cookie的生存期,如示例代码14-5所示。
示例代码14-5
01    <title>cookie的生存期</title>                <!--文档的标题-->
02    cookie名:
03    <input type="text" name="Name">            <!- cookie名的文本框-->
04    <br>                                        <!-换行-->
05    cookie值:
06    <input type="text" name="Value">            <! cookie值的文本框- -->
07    <br>                                        <!-换行-->
08    cookie时间:                        
09    <select name="Time" size="1">                <!-选择列表组合框-->
10      <option value="1">一天</option>            <!-列表项1-->
11      <option value="2">二天</option>            <!-列表项2-->
12      <option value="3">三天</option>            <!-列表项3-->
13      <option value="4">四天</option>            <!-列表项4-->
14      <option value="5">五天</option>            <!-列表项5-- >
15      <option value="6">六天</option>            <!-列表项6-->
16      <option value="7">七天</option>            <!-列表项7-->
17      <option value="8">八天</option>            <!-列表项8 -->
18    </select>
19    <script language="JavaScript" type="text/javascript">
20    <!--
21    function setCookie()
22    {
23        //以下三句是获取客户输入的信息:cookie变量的值、名和保存时间
24        n=Time.value;                            //cookie变量的保存时间
25        var name=Name.value;                    //cookie变量的名
26        var psd=Value.value;                    //cookie变量的值
27        if(name!="")
28        {
29            var date=new Date();                //获取当前时间
30            var expireDays=n*24*3600*1000;        //将date设置为n天以后的时间
31            date.setTime(date.getTime()+expireDays);
32            //将userId和userName两个cookie设置为10天后过期
33            document.cookie=name+"=;" +escape(psd)+"; expire="+date.toGMTString ();
34            alert("设置成功!时间为:"+expireDays+"秒("+n+"天)");                                                                        //输出信息
35        }
36        else
37        {
38            alert("设置失败,cookie变量名不能为空");        //提示用户设置失败
39        }
40    }
41    //-->
42    </script>                                        //JavaScript标签的结束
43    <input type="submit" name="Submit" value="设置cookie"  onClick="setCookie()">
【运行结果】打开网页文件运行程序。
【代码解析】这个例子演示了设置cookie存活时间的方法。主要是学习expire参数的使用。代码第29~32行是设置时间的过程,第33行是本例的关键,演示了如何使用expire参数。
注意:cookie可能会由于浏览器的关闭而消失,因此,不宜采用cookie来保存比较重要的信息。
原创粉丝点击