1

我正在尝试使用 cookie 来存储单个整数,因此当用户刷新页面时,我能够检索他们之前的数字(以阻止出现双倍的视频)。

实现这一目标的最低要求是什么?

var randomNumber = Math.floor((Math.random()*10)+1);

document.cookie=(randomNumber);

设置 cookie:

document.cookie = 'mycookie=' + randomNumber + ";max-age=" + (300) + ";";

读取 cookie:

var cookie = document.cookie;

alert(decodeURIComponent(cookie));

cookie 包含其他一些随机内容,例如 push=1 和 mycookie。我应该在添加随机数之前将 cookie 设置为 null 吗?

至于获取 mycookie 的值,我只是将 cookie 分配给一个字符串并从中解析 mycookie 吗?

4

2 回答 2

2

泰米尔语的评论很中肯。如果您希望超过最小 cookie 使用量,请使用这些 quirksmode 函数:

cookie_create = function (name,value,days) {
    var expires, date;

    if (days) {
        date = new Date();
        date.setTime(date.getTime()+(days*24*60*60*1000));
        expires = "; expires="+date.toGMTString();
    }
    else expires = "";
    document.cookie = name+"="+value+expires+"; path=/";

expires = date = null;
};


cookie_read = function (name) {
    var nameEQ = name + "=",
    ca = document.cookie.split(';'),
    len = ca.length,
    i, c; 

    for(i = 0; i < len; ++i) {
        c = ca[i];
        while (c.charAt(0) === ' ') c = c.substring(1); //,c.length);
        if (c.indexOf(nameEQ) === 0) return c.substring(nameEQ.length); //,c.length);
    }

nameEQ = name = ca = i = c = len = null;
return null;
};


cookie_erase = function (name){
    cookie_create(name,"",-1);
name = null;
};
于 2012-06-30T08:39:24.803 回答
1

您可以使用document.cookie在 javascript 中读取/写入 cookie:

document.cookie = 'mycookie=' + randomNumber + '; path=/';

如果您希望 cookie 即使在用户关闭浏览器后仍然存在,您可以指定一个expires日期。

于 2012-06-30T07:32:36.517 回答