黄色网页视频 I 影音先锋日日狠狠久久 I 秋霞午夜毛片 I 秋霞一二三区 I 国产成人片无码视频 I 国产 精品 自在自线 I av免费观看网站 I 日本精品久久久久中文字幕5 I 91看视频 I 看全色黄大色黄女片18 I 精品不卡一区 I 亚洲最新精品 I 欧美 激情 在线 I 人妻少妇精品久久 I 国产99视频精品免费专区 I 欧美影院 I 欧美精品在欧美一区二区少妇 I av大片网站 I 国产精品黄色片 I 888久久 I 狠狠干最新 I 看看黄色一级片 I 黄色精品久久 I 三级av在线 I 69色综合 I 国产日韩欧美91 I 亚洲精品偷拍 I 激情小说亚洲图片 I 久久国产视频精品 I 国产综合精品一区二区三区 I 色婷婷国产 I 最新成人av在线 I 国产私拍精品 I 日韩成人影音 I 日日夜夜天天综合

js中cookie的基本用法簡介

系統(tǒng) 2044 0
此例子包含互動操作請參看http://www.quirksmode.org/js/ Examplecookies.html

腳本


這里有你需要的三個(gè)腳本


function createCookie(name,value,days) {

?????? if (days) {

????????????? var date = new Date();

????????????? date.setTime(date.getTime()+(days*24*60*60*1000));

????????????? var expires = "$$ expires="+date.toGMTString();

?????? }

?????? else var expires = ""$$

?????? document.cookie = name+"="+value+expires+"$$ path=/"$$

}


function readCookie(name) {

?????? var nameEQ = name + "="$$

?????? var ca = document.cookie.split(';');

?????? for(var i=0;i < ca.length;i++) {

????????????? var c = ca[i];

????????????? while (c.charAt(0)==' ') c = c.substring(1,c.length);

????????????? if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);

?????? }

?????? return null;

}


function eraseCookie(name) {

?????? createCookie(name,"",-1);

}

解釋:

這個(gè)函數(shù)并不特別復(fù)雜,最難的部分就是為設(shè)定cookie建立正確的語法。


createCookie

當(dāng)調(diào)用createCookie()時(shí)需要給出三個(gè)信息片段(參數(shù)):cookie的名字,值和保留cookie的天數(shù),下面的情況是鍵值對變?yōu)?ppkcookie=testcookie 并保留cookie7天。

createCookie(‘ppkcookie’,’testcookie’,7)


如果將天數(shù)設(shè)為0,在關(guān)閉瀏覽器時(shí)cookie也就會被清除了,若將天數(shù)設(shè)為負(fù)數(shù),cookie將即刻被清除。


這個(gè)函數(shù)接受參數(shù)并開始做事:

Function createCookie(name,value,days){

首先查看是否有days值,如果沒有我們就不必進(jìn)行時(shí)間計(jì)算:

If(days){

如果有days值,新建一個(gè)包含現(xiàn)在日期Date對象:

var date =new Date();

接下來得到當(dāng)前時(shí)間(毫秒)并加上取得的天數(shù)(轉(zhuǎn)換為毫秒)。然后賦值給date變量,現(xiàn)在我們就有了cookie過期需要的時(shí)間的毫秒值。

Date.setTime(date.getTime()+(days*24*60*60*1000));

把date的UTC/GMT格式賦給cookie需要的變量expires

var expires =”; expires=”+date.toGMTString();

}

如果傳遞給函數(shù)的days為0,expires就設(shè)為空,這樣的話當(dāng)關(guān)閉瀏覽器時(shí)cookie就過期了

Else var expires =””;

最后把新的cookie按照正確的語法寫入document.cookie中:

Document.cookie=name+”=”+value+expires+”; path=/”;


到此cookie建立成功。


readCookie


要讀取cookie,調(diào)用這個(gè)函數(shù)并傳遞cookie的name。把name放入一個(gè)變量。首先檢查是否這個(gè)變量已被賦值(如果cookie不存在,這個(gè)變量變?yōu)閚ull,這可能會打亂函數(shù)的執(zhí)行),然后做任何想做的事:

Var x =readCookie(‘ppkcookie1’)

If(x){

?????? [do something with x]

}

函數(shù)接收參數(shù)并開始執(zhí)行:

Function readCookie(name){

然后準(zhǔn)備搜索名為name的cookie,把=附加到name后,并把它賦給新的字符串變量nameEQ:

Var nameEQ=name+”=”;

然后用分號(;)把document.cookie分割,把分割后的數(shù)組賦給變量ca,其中包含此域和路徑的所有cookies:

Var ca = document.cookie.split(‘;’);

遍歷數(shù)組(即cookies):

For(var i=0;i<ca.length;i++){

把要被檢查的cookie賦給變量c

Var c=ca[i];

如果第一個(gè)字符為空格,用substring()方法去掉,循環(huán)此步驟直到第一個(gè)字符不是空格為止:

While(c.charAt(0)==’ ‘) c=c.substring(1,c.length);

現(xiàn)在字符串c的值開始于當(dāng)前cookie的name,檢查是否這個(gè)name是我們需要的cookie的:

If(c.indexOf(nameEQ)==0)

我們已經(jīng)找到我們要找的cookie。現(xiàn)在只需要返回cookie的值,這個(gè)值就是c中nameEQ后面的部分。返回值后函數(shù)也結(jié)束:任務(wù)完成!

If(c.indexOf(nameEQ)==0) return c.substring(nameEQ.length,c.length);

}

如果遍歷所有cookies后沒有發(fā)現(xiàn)要找的name,那么cookie就不是當(dāng)前的,返回null

Return null

}

Cookie讀取完成


EraseCookie

清除cookie是非常簡單的。

eraseCookie(’ppkcookie’)

把要清除的cookie的name傳遞過去

Function eraseCookie(name){

調(diào)用createCookie()將cookie的過期日期設(shè)置為以前的某個(gè)時(shí)間

createCookie(name,””,-1);


js中cookie的基本用法簡介


更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯(lián)系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長非常感激您!手機(jī)微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發(fā)表我的評論
最新評論 總共0條評論