在JavaScript中把資訊儲存到使用者的客戶機硬碟的方法比較有限。這是出由安全因素的考慮。但是對硬碟寫入的限制卻是嚴重降低了JavaScript功能性。正是在這種情況下才出現了Cookie--一種有限制的寫入硬碟的方法。
Cookie的限制:
這些限制包括。瀏覽器的Cookies不能超過300個,並且每個不能超過4KB,因此總Cookie檔案大小限制在1200KB之內。其中每個網站的Cookie不能超過20個。
Cookie的存放位置:
Netscape4.X瀏覽器把Cookie放在"E:/Program Files/Netscape/users/chendian/cookies.txt"其中"E:/Program Files"是你的瀏覽器被安裝到的位置,"chendian"是你的使用者名稱。
在IE中Cookie被放在F:/WINDOWS/Profiles/c/Cookies/c@www_glisp_com(5).txt,其中"F:/WINDOWS"是windows被安裝到的位置,"Profiles/c"中的C是你登入windows時的使用者名稱。
當然對於任何你不想再保留的Cookie你可以用對上述的檔案編輯的方法來刪除。
在這裡我們來看一個讀寫Cookie的例子,你可以複製下直接在你的網頁中使用。
Cookie的讀寫方法:
1. 寫入。對於設定Cookie只要一句Javascript語句就可以了如:
document.cookie=" chd=ok";
其中chd是你要設定的Cookie變數名,現存入"ok"字串。
2. 讀取。
function getCookieVal (offset)
{
var endstr = document.cookie.indexOf (";", offset);
if (endstr == -1)
endstr = document.cookie.length;
return unescape(document.cookie.substring(offset, endstr));
}
function GetCookie (name)
{
var arg = name + "=";
var alen = arg.length;
var clen = document.cookie.length;
var i = 0;
while (i < clen)
{
var j = i + alen;
if (document.cookie.substring(i, j) == arg)
return getCookieVal (j);
i = document.cookie.indexOf(" ", i) + 1;
if (i == 0)
break;
}
return null;
}
alert("Cooke chd="+GetCookie('chd'));
用GetCookie("Cookie變數名")就可以讀取先前設定的Cookie。