JavaScriptの中のdocument.co okieの使用

6845 ワード

もっと読む
      ,  document        cookie   。   Cookie     ?“   Web                        ,        Cookie。”—— MSIE   。    ,Cookies   CGI    ,  HTML      、      ,   javascript       Cookies          。

          Cookie      。

     Cookie      :=

       javascript          ,  “    javascript    ”,  “        URL       ”。      ,              ,        。     “        URL       ”。

     Cookie       ,             ,   Cookie      。           Cookie,                          。

      ,       ,       Cookies,   Cookies               ,                      ,      。  “ ”Cookies        (   2KB  “ ”),        ,       Cookie     ,     Cookie“  ”。

            documents.cookie   。

         documents.cookie   ,   ,     ,       ,    documents.cookie   ,                   Cookies,   Cookies    ,    。  ,       “document.write(documents.cookie)”,    :

name=kevin; [email protected]; lastvisited=index.html

    ,     3   Cookies:name, email   lastvisited,        kevin, [email protected]   index.html。    ,   Cookies             ,        cookieString.split('; ')        Cookie        (   var cookieString = documents.cookie)。

       Cookie       documents.cookie   。           ,  documents.cookie            Cookies,      Cookies       Cookie。     :

documents.cookie = 'cookieName=' + escape('cookievalue')
+ ';expires=' + expirationDateObj.toGMTString();

         ?cookieName    Cookie    ,cookievalue    Cookie   ,expirationDateObj                ,           ,       。       ,             (         )    。

     escape()   :       ?   Cookie       “        URL       ”。    “escape()”         URL         ,         “escape()”         Cookie   , “unescape()”     Cookie             。                 Cookies。       Cookie   “documents.cookie = 'cookieName=cookievalue'”    ,        cookievalue     URL         ,      escape()  。
    “expires”     :      。        。
     toGMTString()   :   Cookie          GMT       ,             。

           。    “name=rose”  Cookie,  3      。

var expires = new Date();
expires.setTime(expires.getTime() + 3 * 30 * 24 * 60 * 60 * 1000);
/*     x       30   x    24   
x     60   x    60   x    1000    */
documents.cookie = 'name=rose;expires=' + expires.toGMTString();

       escape()   ?         rose        URL      ,    ,'rose' == escape('rose')。    ,     Cookie     escape(),    Cookie      unescape()。

      :      ,        Cookie   。

function getCookie(cookieName) {
var cookieString = documents.cookie;
var start = cookieString.indexOf(cookieName + '=');
//               Cookie     
//   cookieName       。
if (start == -1) //    
return null;
start += cookieName.length + 1;
var end = cookieString.indexOf(';', start);
if (end == -1) return unescape(cookieString.substring(start));
return unescape(cookieString.substring(start, end));
}

                 ,       (          ),     。        if         else,          ,        return   ,       return,      ,     else     。       Cookie  ,     Cookie   ,    “null”。

               name=rose Cookie。

var expires = new Date();
expires.setTime(expires.getTime() - 1);
documents.cookie = 'name=rose;expires=' + expires.toGMTString();

    ,                  (     1   ),          Cookie,      Cookie  。

 

       js  cookie   :

 
///  cookie 
function setCookie(NameOfCookie, value, expiredays) 
{ 
//@  :          cookie: 
//cookie   ,   Cookie , 
//   Cookie     . 
//                 

var ExpireDate = new Date (); 
ExpireDate.setTime(ExpireDate.getTime() + (expiredays * 24 * 3600 * 1000)); 

//          cookie ,      "document.cookie"    . 
//       toGMTstring()       GMT  。 

document.cookie = NameOfCookie + "=" + escape(value) + 
  ((expiredays == null) ? "" : "; expires=" + ExpireDate.toGMTString()); 
} 

///  cookie  
function getCookie(NameOfCookie) 
{ 

//        cookie    . 
//       document.cookie    0 

if (document.cookie.length > 0) 
{ 

//        cookie        document.cookie 

//       cookie   ,    document.cookie     0             cookie   
//                   cookie 
//  begin        -1        

begin = document.cookie.indexOf(NameOfCookie+"="); 
if (begin != -1)    
{ 

//        cookie. 

begin += NameOfCookie.length+1;//cookie       
end = document.cookie.indexOf(";", begin);//     
if (end == -1) end = document.cookie.length;//  ; end         
return unescape(document.cookie.substring(begin, end)); } 
} 

return null; 

// cookie     null 
} 

///  cookie 
function delCookie (NameOfCookie) 
{ 
//       cookie    ,                  ; 
//               cookie  

if (getCookie(NameOfCookie)) { 
document.cookie = NameOfCookie + "=" + 
"; expires=Thu, 01-Jan-70 00:00:01 GMT"; 
} 
}
 
 
 
 
 
Cookie