通过javascript更改cookie而不更改有效期



我想在不更改有效期的情况下设置现有cookie的值。例子:

document.cookie="username=John Doe; expires=Thu, 18 Dec 2013 12:00:00 GMT; path=/";

document.cookie="username=David Doe; expires=Thu, 18 Dec 2013 12:00:00 GMT; path=/";

只使用JavaScript很重要。

谢谢。

我所知道的实现此任务的最佳方法是将原始过期日期保存为cookie数据的一部分,然后在每次设置现有cookie时重用它。

function setCookie(cookieName, cookieValue){
    var expireDate = document.cookie.indexOf(cookieName) === -1
            ? new Date(new Date().setTime(new Date().getTime()+30*24*60*60*1000)) // 30 days
            : unescape(document.cookie).split('expireDate=')[1]; // split out date to reuse
    document.cookie = cookieName + '=' + cookieValue + ',expireDate=' + expireDate + ';expires=' + expireDate;
} 

最新更新