您好,登錄后才能下訂單哦!
這期內(nèi)容當(dāng)中小編將會(huì)給大家?guī)碛嘘P(guān)JavaScript中怎么設(shè)置cookie,文章內(nèi)容豐富且以專業(yè)的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。
JavaScript怎樣設(shè)置cookie
語法:
document.cookie=" name=value ; expire=GMT_String ; path=cookieDir ; domain=cookieDomain "
對(duì)cookie格式的說明
鍵/值 對(duì) 說明
name=value 必需。設(shè)置cookie的名稱和值,一次只能設(shè)置一個(gè)。
在cookie的名稱或值中不會(huì)出現(xiàn)分號(hào)( ; )、逗號(hào)( , )、等號(hào)( = )、空格以及中文等,否則將會(huì)被瀏覽器編碼。在cookie的名稱中做到這點(diǎn)很容易(名稱一般是開發(fā)人員設(shè)定好的),但是保存的值是不確定的,如何來存儲(chǔ)這些值呢?方法是用escape()函數(shù)進(jìn)行編碼,它能將一些特殊符號(hào)使用十六進(jìn)制表示,例如空格將會(huì)編碼為“20%”,從而可以存儲(chǔ)于cookie值 中,而且使用此種方案還可以避免中文亂碼的出現(xiàn)。
例如,將“小明”存入cookie:
document.cookie="username="+eacape("小明");
expire=GMT_String 可選。設(shè)置cookie的過期時(shí)間。
默認(rèn)情況下(不設(shè)置expire),用戶關(guān)閉瀏覽器時(shí)會(huì)銷毀cookie,這些cookie僅僅是存儲(chǔ)在內(nèi)存中,而沒有建立相應(yīng)的硬盤文件。在實(shí)際開發(fā)中,cookie 通常需要長期保存,例如保存用戶登錄的狀態(tài),可以通過設(shè)置 cookie 的過期時(shí)間來實(shí)現(xiàn)。
過期時(shí)間是以GMT格式表示的時(shí)間字符串,超過這個(gè)時(shí)間,cookie將消失,不可訪問。
例如,如果要將cookie設(shè)置為10天后過期:
var date=new Date(); // 更多請(qǐng)參考 JavaScript Date 對(duì)象
var expireDays=10;
date.setTime(date.getTime()+expireDays*24*3600*1000);
path=cookieDir 可選。設(shè)置cookie的有效路徑。
默認(rèn)情況下(不設(shè)置path),cookie只在當(dāng)前路徑下有效,路徑范圍之外不能訪問該cookie。例如,在 /javascript/jiaocheng/ 路徑下設(shè)置的cookie,只能被 /javascript/jiaocheng/ 路徑下的文件以及子目錄下的文件訪問。
要使 cookie 全站有效,請(qǐng)?jiān)O(shè)置 path=/ 。
domain=cookieDomain 可選。設(shè)置cookie的有效域名。
默認(rèn)情況下(不設(shè)置 domain),cookie 只在當(dāng)前域名下有效。例如,在 demo.itxueyuan.org 下設(shè)置的 cookie ,不能在 javascript.itxueyuan.org 域名下訪問。
要使 cookie 在 itxueyuan.org 的所有二級(jí)域名和主域名下都有效,請(qǐng)?jiān)O(shè)置 domain=.itxueyuan.org
請(qǐng)看下面幾個(gè)設(shè)置 cookie 的例子。
最簡單的 cookie 設(shè)置:
JavaScript怎樣設(shè)置cookie
document.cookie=" name=xiaoming ";
對(duì) cookie 的值進(jìn)行 escape() 編碼:
var cookieValue=" 小明 ";
document.cookie=" name= "+escape(cookieValue) ;
設(shè)置有效路徑為全站有效:
document.cookie=" name=xiaoming ; path=/ ";
設(shè)置過期時(shí)間為 1 天:
var date=new Date(); // 創(chuàng)建日期對(duì)象
var cookieExpire=date.getTime()+24*3600*1000; // 以微妙計(jì)算
document.cookie=" name=xiaoming ; expire= "+cookieExpire;
舉例,將IT學(xué)院會(huì)員的用戶名和密碼保存到cookie,過期時(shí)間一個(gè)月,全站有效,所有域名有效:
var username="小明";
var password="123456";
var expire=(new Date()).getTime()+1000*3600*24*30;
document.cookie = " username=" + escape(username) + " expire=" + expire + " ; path=/ ; domain=.itxueyuan.org ";
document.cookie = " password=" + escape(password) + " expire=" + expire + " ; path=/ ; domain=.itxueyuan.org ";
上述就是小編為大家分享的JavaScript中怎么設(shè)置cookie了,如果剛好有類似的疑惑,不妨參照上述分析進(jìn)行理解。如果想知道更多相關(guān)知識(shí),歡迎關(guān)注億速云行業(yè)資訊頻道。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請(qǐng)聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。