2012-06-30 16 views
0

我想用一個cookie來存儲一個整數,所以當用戶刷新頁面時,我能夠檢索他們以前的號碼(試圖阻止雙打出現一段視頻)。Javascript - 使用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包含像推其他一些隨機的東西= 1和的myCookie。在添加randomNumber之前,我應該將cookie設置爲null嗎?

只要獲得mycookie的值,我只是將cookie分配給一個字符串並從它解析mycookie?

+1

檢查http://www.quirksmode.org/js/cookies.html以在javascript中設置和檢索cookie值。一旦您檢索到您的Cookie的值,請使用javascript'parseInt' – Tamil

回答

1

你可以使用document.cookie在javascript來讀/寫餅乾:

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

如果你想要的餅乾是即使在用戶關閉他的瀏覽器,你可以指定一個expires日期持久。

+0

非常感謝:)現在正在閱讀/解析Cookie:P – cheeseman

2

泰米爾的評論是堅實的。如果您希望超過最小Cookie使用率,請使用這些怪異模式功能:

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; 
}; 
相關問題