亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > JavaScript > 正文

基于js中document.cookie全面解析

2019-11-19 15:27:28
字體:
來源:轉載
供稿:網友

什么是cookie?

cookie 是存儲于訪問者的計算機中的變量。每當同一臺計算機通過瀏覽器請求某個頁面時,就會發送這個 cookie。你可以使用 JavaScript 來創建和取回 cookie 的值。

設置cookie

每個cookie都是一個名/值對,可以把下面這樣一個字符串賦值給document.cookie:

document.cookie="userId=828";

document.cookie看上去就像一個屬性,可以賦不同的值。但它和一般的屬性不一樣,改變它的賦值并不意味著丟失原來的值,例如連續執行下面兩條語句:

document.cookie="userId=828";document.cookie="userName=hulk"; 

這時瀏覽器將維護兩個cookie,分別是userId和userName,因此給document.cookie賦值更像執行類似這樣的語句:

document.addCookie("userId=828");document.addCookie("userName=hulk");

事實上,瀏覽器就是按照這樣的方式來設置cookie的,如果要改變一個cookie的值,只需重新賦值,例如:

document.cookie="userId=929";

這樣就將名為userId的cookie值設置為了929。

獲取cookie的值

下面介紹如何獲取cookie的值。cookie的值可以由document.cookie直接獲得:

var strCookie=document.cookie; 

這將獲得以分號隔開的多個名/值對所組成的字符串,這些名/值對包括了該域名下的所有cookie。例如:

document.cookie="userId=828";document.cookie="userName=hulk";var strCookie=document.cookie;console.log(strCookie); //userId=828; userName=hulk

當然這個要在環境下運行,因為是獲取當前域名下的cookie。

由此可見,只能夠一次獲取所有的cookie值,而不能指定cookie名稱來獲得指定的值,這正是處理cookie值最麻煩的一部分。

用戶必須自己分析這個字符串,來獲取指定的cookie值,例如,要獲取userId的值,可以這樣實現:

document.cookie="userId=828";document.cookie="userName=hulk";var strCookie=document.cookie;console.log(strCookie); //userId=828; userName=hulkfunction getdescookie(strcookie,matchcookie){  var getMatchCookie;  var arrCookie=strcookie.split(";");  for(var i=0;i<arrCookie.length;i++){     var arr=arrCookie[i].split("=");     if(matchcookie == arr[0]){        getMatchCookie = arr[1];        break;     }  }  return getMatchCookie;}var resultCookie = getdescookie(strCookie,'userId');console.log(resultCookie); //828

這樣就得到了單個cookie的值。

如果在某個頁面創建了一個cookie,那么該頁面所在目錄中的其他頁面也可以訪問

該cookie。如果這個目錄下還有子目錄,則在子目錄中也可以訪問。

例如在www.xxxx.com/html/a.html中所創建的cookie,可以被www.xxxx.com/html/b.html或www.xxx.com/ html/ some/c.html所訪問,但不能被www.xxxx.com/d.html訪問。

為了控制cookie可以訪問的目錄,需要使用path參數設置cookie,語法如下:

document.cookie="name=value; path=cookieDir";

其中cookieDir表示可訪問cookie的目錄。

例如:

document.cookie="userId=320; path=/shop";

就表示當前cookie僅能在shop目錄下使用。

如果要使cookie在整個網站下可用,可以將cookie_dir指定為根目錄,例如:

document.cookie="userId=320; path=/";

常用的cookie操作及其函數實現

addCookie

addCookie(name,value,expireHours) 該函數接收3個參數:cookie名稱,cookie值,以及在多少小時后過期。

function addCookie(name,value,expireHours){   var exdate = new Date();      exdate.setTime(exdate.getTime() + expireHours * 60 * 60 * 1000);     document.cookie = c_name + "=" + escape(value) + ((expireHours == null) ? "" : ";expires=" + exdate.toUTCString());}

getCookie

獲取指定名稱的cookie值:getCookie(name)

該函數返回名稱為name的cookie值,如果不存在則返回空,其實現如下:

function getCookie(name){ var arr, reg = new RegExp("(^| )" + name + "=([^;]*)(;|$)");  if (arr = document.cookie.match(reg)){    return (arr[2]);  }else{     return null;  }   }

或者不用正則匹配,如下面代碼:

function getCookie(name){   var strCookie=document.cookie;   var arrCookie=strCookie.split(";");   for(var i=0;i<arrCookie.length;i++){      var arr=arrCookie[i].split("=");      if(arr[0]==name){        return arr[1];      }   }   return null;}

deleteCookie

刪除指定名稱的cookie:deleteCookie(name)

該函數可以刪除指定名稱的cookie,其實現如下:

function deleteCookie(name){  var exp = new Date();  exp.setTime(exp.getTime() - 1);  document.cookie = name + "=v;expires=" + exp.toUTCString();}

說明下:這兒我用的toUTCString()方法,看了網上有的用的toGMTString()在格式化時間,但不贊成使用此方法。請使用 toUTCString() 取而代之??!在W3C中看到這句話。

以上這篇基于js中document.cookie全面解析就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持武林網。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
91产国在线观看动作片喷水| 成人国产精品色哟哟| 欧美激情videos| 欧美日韩福利在线观看| 亚洲国产中文字幕久久网| 国产精品成av人在线视午夜片| 国产亚洲a∨片在线观看| 欧美最猛性xxxxx免费| 亚洲日本aⅴ片在线观看香蕉| 久久久亚洲国产天美传媒修理工| 91精品视频观看| xxxxx91麻豆| 欧美激情三级免费| 尤物精品国产第一福利三区| 色综合久久88| 日韩亚洲欧美中文在线| 日韩欧美国产骚| 日韩电影中文 亚洲精品乱码| 欧美福利小视频| 亚洲天堂免费在线| 欧美日韩免费区域视频在线观看| 中文字幕精品—区二区| 97视频在线观看免费高清完整版在线观看| 91亚洲精品在线观看| 中文字幕日韩欧美在线视频| 国产小视频国产精品| 91精品国产91久久久久久吃药| 久久久国产在线视频| 97人洗澡人人免费公开视频碰碰碰| 亚洲乱码国产乱码精品精| 欧美一级视频一区二区| 国产成+人+综合+亚洲欧美丁香花| 欧美成人在线免费视频| 久久久亚洲影院| 国产成人免费av电影| 伊人一区二区三区久久精品| 日韩精品免费观看| 77777少妇光屁股久久一区| 成人欧美一区二区三区黑人孕妇| 亚洲成人国产精品| 欧美中在线观看| 欧美激情va永久在线播放| 国产视频精品一区二区三区| 亚洲国产97在线精品一区| 欧美日韩福利视频| 日韩电影中文字幕在线观看| 亚洲精品在线91| 久久视频国产精品免费视频在线| 国产欧美日韩中文| 亚洲美女av在线播放| 久久人人爽人人爽人人片av高请| 欧美午夜片欧美片在线观看| 国产精品稀缺呦系列在线| 日韩最新av在线| 福利一区福利二区微拍刺激| 色爱av美腿丝袜综合粉嫩av| 欧美亚洲国产日本| 国产精品第一区| 国模吧一区二区三区| 亚洲男人天堂网站| 日韩精品在线观看视频| 亚洲欧洲偷拍精品| 欧美有码在线观看视频| 丁香五六月婷婷久久激情| 九九久久精品一区| 欧美成人免费全部观看天天性色| 97婷婷涩涩精品一区| 91国内免费在线视频| 欧美丰满老妇厨房牲生活| 国产精品白嫩初高中害羞小美女| 国产主播欧美精品| 久久成人人人人精品欧| 国产精品久久久久久av福利| 国产精品69久久| 亚洲精品自拍偷拍| 欧美成人精品三级在线观看| 国产免费久久av| 色一区av在线| 亚洲尤物视频网| 精品久久香蕉国产线看观看亚洲| 亚洲精品短视频| xx视频.9999.com| 亚洲自拍小视频免费观看| 国产伦精品一区二区三区精品视频| 亚洲国产97在线精品一区| 成人免费自拍视频| 精品中文字幕在线观看| 亚洲色图美腿丝袜| 亚洲bt欧美bt日本bt| 亚洲在线第一页| 久久99国产精品久久久久久久久| 欧美交受高潮1| 国产精品高精视频免费| 97久久精品在线| 欧美性xxxx在线播放| 亚洲sss综合天堂久久| 久久久精品2019中文字幕神马| 欧美成人剧情片在线观看| 国产精品美女午夜av| 日韩电视剧在线观看免费网站| 色婷婷综合久久久久中文字幕1| 久久亚洲国产精品成人av秋霞| 欧美午夜女人视频在线| 91大神在线播放精品| 日日噜噜噜夜夜爽亚洲精品| 久久777国产线看观看精品| 日韩精品极品毛片系列视频| 国产精品久久久久久搜索| 4p变态网欧美系列| 91成人性视频| 成人国产精品久久久| 美女999久久久精品视频| 欧美成人午夜剧场免费观看| 国产精品va在线播放| 亚洲风情亚aⅴ在线发布| 久久99国产精品自在自在app| 亚洲精品免费av| 中文字幕日韩欧美在线| 色综合五月天导航| 亚洲电影免费在线观看| 欧美日韩一区二区免费在线观看| 91色在线观看| 欧美成年人在线观看| 午夜免费久久久久| 久久精品电影网站| 亚洲福利精品在线| 欧美黑人性生活视频| 久久精品视频播放| 中文字幕日韩视频| 国产日产亚洲精品| 亚洲欧美中文字幕在线一区| 久久精品福利视频| 日韩黄色av网站| 欧美成人精品一区| 欧美老肥婆性猛交视频| 91av视频在线| 精品美女久久久久久免费| 韩国精品久久久999| 日韩av123| 久久久视频在线| 久久精品在线播放| 最好看的2019的中文字幕视频| 国产精品久久久久久久午夜| 亚洲欧洲国产精品| 日韩在线www| 久久久久久久91| 久久久国产精品免费| 夜夜嗨av一区二区三区四区| 久久亚洲精品网站| 国产精品久久久久久亚洲调教| 亚洲人成电影网站色| 国产成人精品一区二区| 国产欧美日韩丝袜精品一区| 日本韩国欧美精品大片卡二| 亚洲国产古装精品网站| 精品国产一区二区三区四区在线观看| 日本亚洲欧洲色| 中文字幕日韩在线视频| 国产剧情日韩欧美| 国产精自产拍久久久久久蜜| 亚洲精品小视频在线观看| 日韩成人在线免费观看| 成人黄色片网站| 日韩欧美一区二区在线|