cookie的使用

   一般我們用的時候,直接寫幾個函數來完成不同的功能,像getCookie(name),setCookie(name,value),delCookie(name)。下面分別寫出來,以做筆記吧:

 

//設定Cookie值
function setCookie(name, value){
 var expdate = new Date();
 var argv = setCookie.arguments;
 var argc = setCookie.arguments.length;
 var expires = (argc > 2) ? argv[2] : null; //Expires – 過期時間。
 var path = (argc > 3) ? argv[3] : null;   //Path – 路徑。指定與cookie關聯的WEB頁.
 var domain = (argc > 4) ? argv[4] : null; //Domain – 域。指定關聯的WEB服務器或域。
 var secure = (argc > 5) ? argv[5] : false; //Secure – 安全。
 if(expires!=null) expdate.setTime(expdate.getTime() + ( expires * 1000 ));
  document.cookie = name + "=" + escape (value) +((expires == null) ? "" : ("; expires="+ expdate.toGMTString()))
  +((path == null) ? "" : ("; path=" + path)) +((domain == null) ? "" : ("; domain=" + domain))
  +((secure == true) ? "; secure" : "");
}


//獲得Cookie的原始值
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;
}

//獲得Cookie解碼後的值
function getCookieVal(offset){
 var endstr = document.cookie.indexOf (";", offset);
 if (endstr == -1)
  endstr = document.cookie.length;
 return unescape(document.cookie.substring(offset, endstr));
}

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章