cookie可以在用戶(hù)的瀏覽器中保存一些信息,比如用戶(hù)的用戶(hù)名,密碼等。今天這篇博文就說(shuō)一說(shuō)利用用原生的JAVAscript代碼來(lái)設(shè)置cookie,讀取cookie,以及刪除cookie的方法。

什么是cookie ?

cookie:是記錄在用戶(hù)瀏覽器中的信息,通常情況下是以“鍵/值”的形式進(jìn)行存儲(chǔ)的,可設(shè)置過(guò)期的時(shí)間.

如以下格式

name=mochu

name:為鍵名,也就是cookie記錄的變量名

mochu:為cookie記錄的值

當(dāng)web頁(yè)面向服務(wù)器發(fā)出請(qǐng)求時(shí),屬于此頁(yè)面的所有cookie信息,也一并上傳到服務(wù)器,服務(wù)器端可以通過(guò)對(duì)cookie的識(shí)別,來(lái)辨別出頁(yè)面的來(lái)源或是用戶(hù)的身份。

js創(chuàng)建 cookie 的方法

js中可以通過(guò) document.cookie 來(lái)創(chuàng)建 cookie

可以直接創(chuàng)建一個(gè) cookie

document.cookie = "Name=mochu";

創(chuàng)建一個(gè)帶有過(guò)期時(shí)間的 cookie ,這里用的是 GMT 時(shí)間

document.cookie = "Name=mochu ; expires = Sat, 10 Aug 2019 08:55:38 GMT";

注意:如果不設(shè)置過(guò)期時(shí)間,則在瀏覽器關(guān)閉時(shí),cookie自動(dòng)過(guò)期或刪除

設(shè)置cookie的有效果路徑,默認(rèn)情況下,cookie只對(duì)當(dāng)前頁(yè)面有效果

path=/:表示cookie對(duì)web頁(yè)面所屬網(wǎng)站的全部頁(yè)面有效果,你也可以自定義其它路徑

document.cookie = "Name=mochu ; expires = Sat, 10 Aug 2019 08:55:38 GMT ;path=/";

函數(shù)代碼

function setCookie(name, value, time='',path='') { if(time && path){ var strsec = time * 1000; var exp = new Date(); exp.setTime(exp.getTime() + strsec * 1); document.cookie = name + "=" + escape(value) + ";expires=" + exp.toGMTString() + ";path="+path; }else if(time){ var strsec = time * 1000; var exp = new Date(); exp.setTime(exp.getTime() + strsec * 1); document.cookie = name + "=" + escape(value) + ";expires=" + exp.toGMTString(); }else if(path){ document.cookie = name + "=" + escape(value) + ";path="+path; }else{ document.cookie = name + "=" + escape(value); }}

函數(shù)調(diào)用

setCookie("Name", "mochu", 20);

參數(shù):cookie名稱(chēng),cookie值,過(guò)期時(shí)間(秒為單為),路徑

js讀取 cookie 的方法

js 讀取cookie的方法也是要用到 document.cookie

如下代碼:

var x = document.cookie;

document.cookie,會(huì)以字符串的形式反回所有的cookie

例:

setCookie("Name", "mochu",20,'/');setCookie("pass", "123", 20, '/');var x = document.cookie;console.log(x);

打印結(jié)果:

Name=mochu; pass=123

document.cookie 獲取到的 cookie 都是字符串的形式,我們可以對(duì)其獲取的結(jié)果進(jìn)行加工,來(lái)輸出指定的 cookie

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

調(diào)用方法

console.log(getCookie('Name'));

打印結(jié)果:

mochujs刪除 cookie 的方法

js 刪除cookie 的操作非常簡(jiǎn)單,只要將 cookie 的過(guò)期時(shí)候設(shè)置成比當(dāng)前時(shí)間小就可以了

自定義函數(shù)代碼:

function delCookie('Name'); { var exp = new Date(); exp.setTime(exp.getTime() - 1); // 這里需要判斷一下cookie是否存在 var c = getCookie(name); if (c != null){ document.cookie = name + "=" + c + ";expires=" + exp.toGMTString(); }}

調(diào)用方式:

delCookie('Name');JavaScript 操作 cookie 代碼整理:

1.《cookie js設(shè)置cookie,讀取cookie,刪除cookie的方法》援引自互聯(lián)網(wǎng),旨在傳遞更多網(wǎng)絡(luò)信息知識(shí),僅代表作者本人觀點(diǎn),與本網(wǎng)站無(wú)關(guān),侵刪請(qǐng)聯(lián)系頁(yè)腳下方聯(lián)系方式。

2.《cookie js設(shè)置cookie,讀取cookie,刪除cookie的方法》僅供讀者參考,本網(wǎng)站未對(duì)該內(nèi)容進(jìn)行證實(shí),對(duì)其原創(chuàng)性、真實(shí)性、完整性、及時(shí)性不作任何保證。

3.文章轉(zhuǎn)載時(shí)請(qǐng)保留本站內(nèi)容來(lái)源地址,http://f99ss.com/keji/347512.html