国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 語言 > JavaScript > 正文

js中的cookie的讀寫操作示例詳解

2024-05-06 16:04:13
字體:
來源:轉載
供稿:網友
cookie是有有效期的,cookie的默認有效期是從cookie生成至瀏覽器關閉,也可以通過設置cookie的有效期來指定其失效日期;用戶也可以禁止cookie也可以手動刪除cookie

cookie是一小段信息,以鍵/值對的信息保存在計算機硬盤上的字符串, cookie存儲容量大概在4kb,不同的瀏覽器廠家對cookie大小的限制有微微的差異;cookie主要的本質是“識別”,通過識別來做一些事情;cookie 也是無法從你的硬盤取得任何其它數據,傳送電腦病毒或者獲取你的電子郵件地址。cookie是有有效期的,cookie的默認有效期是從cookie生成至瀏覽器關閉,也可以通過設置cookie的有效期來指定其失效日期;用戶也可以禁止cookie也可以手動刪除cookie。

cookie是字符串而且還是一個特定格式的文本字符串

格式:cookieName=cookieValue;expires=expiresDate;path=URLpath;domain=siteDomain//cookie名稱,失效日期,儲存URL,儲存域值;

cookie的創建方式

設置cookie我們一般都封裝成一個函數:

復制代碼 代碼如下:


function addCookie(sName,sValue,day) {
var expireDate = new Date();
expireDate.setDate(expireDate.getDate()+day);;
//設置失效時間
document.cookie = escape(sName) + '=' + escape(sValue) +';expires=' + expireDate.toGMTString();6 //escape()漢字轉成unicode編碼,toGMTString() 把日期對象轉成字符串
}


讀取cookie

添加了cookie之后,我們如何來獲取它呢,很簡單:

復制代碼 代碼如下:


function getCookies() {
var showAllCookie = '';
if(!document.cookie == ''){
var arrCookie = document.cookie.split('; ');
//用spilt('; ')切割所有cookie保存在數組arrCookie中
var arrLength = arrCookie.length;
for(var i=0; i<arrLength; i++) {
showAllCookie += 'c_name:' + unescape(arrCookie[i].split('=')[0]) + 'c_value:' + unescape(arrCookie[i].split('=')[1]) + '<br>' 9 }
return showAllCookie;
}
}


cookie有有效期可自動刪除,也可以通過設置其失效日期來立即刪除

一樣很簡單,繼續:

復制代碼 代碼如下:


function removeCookie() {
if(document.cookie != '' && confirm('你想清理所有cookie嗎?')) {
var arrCookie = document.cookie.split('; ');
var arrLength = arrCookie.length;
var expireDate = new Date();
expireDate.setDate(expireDate.getDate()-1);
for(var i=0; i<arrLength; i++) {
var str = arrCookie[i].split('=')[0];
document.cookie = str+ '=' + ';expires=' + expireDate.toGMTString();
}
}
}


我們已經知道如何創建、獲取、刪除cookie了,現在也該運用cookie了

下面我們用cookie做一個簡單的計時器:

復制代碼 代碼如下:


var cookieCount = {};
cookieCount.count = function () {
var count = parseInt(this.getCount('myCount'));
count++;
document.cookie = 'myCount=' + count + '';
alert('第'+count+'訪問');
}
cookieCount.setCount= function () {
//首先得創建一個名為myCount的cookie
var expireDate = new Date();
expireDate.setDate(expireDate.getDate()+1);
document.cookie = 'myCount=' + '0' +';expires=' + expireDate.toGMTString();
}
cookieCount.getCount = function (countName) {
//獲取名為計數cookie,為其加1
var arrCookie = document.cookie.split('; ');
var arrLength = arrCookie.length;
var ini = true;
for(var i=0; i<arrLength; i++) {
if(countName == arrCookie[i].split('=')[0]){
return parseInt(arrCookie[i].split('=')[1]);
break;
}else{
ini = false;
}
}
if(ini == false)this.setCount();
return 0;
}
cookieCount.count();


cookie的路徑

本文開頭的時候提到cookie的路徑設置 cookie的路徑:path=URL;

如果在域名的子目錄創建的cookie,域名及其他同級目錄或上級目錄是訪問不到這個cookie的,而通過設置路徑的好處就是可以上域名以及域名的子類目錄都可以訪問到,如下:

document.cookie='cookieName=cookieValue;expires=expireDate;path=/'。

cookie域

設置域:domain=siteDomain

這個主要用在同域的情況下共享一個cookie,例如 "www.taobao.com" 與 "ued.taobao.com" 兩者是共享一個域名"taobao.com",我們如果想讓 "www.taobao.com" 下的cookie被 "ued.taobao.com" 訪問,那么就需要把path屬性設置為 "http://m.survivalescaperooms.com/",并且設置 cookie 的domain-->document.cookie='cookieName=cookieValue;expires=expireDate;path=/;domain=taobao.com'。

隨著web的不斷發展項目中的需要,HTML5提供了兩個屬性window.sessionStorage和window.localStorage,并攜帶了setItem,getItem,removeItem,clear等方法,使得本地存儲數據的方法操作更為簡單便利

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表

圖片精選

主站蜘蛛池模板: 招远市| 永州市| 辽中县| 长白| 新建县| 杨浦区| 福建省| 鄂温| 青海省| 溆浦县| 肃南| 惠东县| 基隆市| 大足县| 县级市| 白朗县| 呼图壁县| 黑龙江省| 安义县| 郎溪县| 郸城县| 灵宝市| 永吉县| 桦川县| 海盐县| 运城市| 长寿区| 南岸区| 元谋县| 罗甸县| 陈巴尔虎旗| 南涧| 玉溪市| 武强县| 仁化县| 三门县| 百色市| 通道| 高平市| 仙游县| 四会市|