js中離線存儲(chǔ)cookie使用方法

【cookie】

平時(shí)我們經(jīng)常在頁面中使用一些能存儲(chǔ)數(shù)據(jù)的方法因俐,比如記錄頁面上次打開的位置化借,選項(xiàng)點(diǎn)擊的位置,經(jīng)常輸入的記錄帜乞,等等等司抱。很多用到。但是目前用的少因?yàn)镠5有新的方法黎烈,我下一篇會(huì)講习柠,不要著急~

注:必須在服務(wù)器環(huán)境下

服務(wù)器

提供計(jì)算機(jī)服務(wù)的設(shè)備,電腦
1照棋、響應(yīng)瀏覽器的請(qǐng)求
2资溃、存東西

cookie干什么:

可以臨時(shí)在瀏覽中中儲(chǔ)存一些東西

特點(diǎn)

1、必須放在服務(wù)器環(huán)境
2必怜、不安全(想看就看肉拓,想刪就刪)
3、cookie有生命周期,默認(rèn)關(guān)閉瀏覽器就消失
4梳庆、有大小4K左右(cookie比較珍貴)
cookie的條數(shù)300個(gè)(一個(gè)瀏覽器)
每個(gè)網(wǎng)站cookie的條數(shù)不能超過20個(gè)

怎么用它?

存暖途、寫:document.cookie='name=value; expires='時(shí)間期限'; path=路徑';
取、讀:document.cookie

在瀏覽器中怎么看膏执?

打開瀏覽器控制臺(tái)驻售,Application中的Storage中Cookie看即可。不同瀏覽器些許不同更米。

document.cookie=123; //直接這樣存
alert(document.cookie)  //123

//或者是這樣 :
document.cookie='password=123';
alert(document.cookie)  //password=123
下面就開始直接進(jìn)入話題欺栗,不啰嗦。

但是 cookie是有到期時(shí)間的征峦,如果默認(rèn)不寫時(shí)間迟几,是一個(gè)會(huì)話就沒了,

expires cookie到期時(shí)間栏笆,可以隨便設(shè)置类腮,默認(rèn)是session。
session 會(huì)話(一段時(shí)間):一個(gè)會(huì)話是指瀏覽打開到關(guān)閉蛉加。

var oDate=new Date();
oDate.setDate(oDate.getDate()+3);
document.cookie='password=123; expires='+oDate; //這樣時(shí)間就是三天后蚜枢,也可不用時(shí)間對(duì)象,直接寫针饥。
alert(document.cookie)  //password=123

cookie是有路徑的厂抽,cookie默認(rèn)存在當(dāng)前文件路徑中。

路徑:
cookie默認(rèn)存在當(dāng)前文件路徑中
里層文件可以去到外層文件存的cookie丁眼,外層文件取不到里層文件存的cookie
但是一般我們一個(gè)項(xiàng)目就用一套cookie筷凤,所以我們都存在根目錄下:

var oDate=new Date();
oDate.setDate(oDate.getDate()+3);
document.cookie='password=123; expires='+oDate+'; path=/';  //注:/代表根目錄下

不啰嗦,太簡單户盯,那我們就先封裝一個(gè)cookie方便以后用:


//設(shè)置
function setCookie(sName,sValue,iDay){
    if(iDay){ //有時(shí)候我們并不會(huì)存時(shí)間嵌施,所有要判斷一下
        var oDate=new Date(); //先new一個(gè)時(shí)間對(duì)象饲化,
        oDate.setDate(oDate.getDate()+iDay); //設(shè)置時(shí)間對(duì)象:我們要給cookie到期時(shí)間
        document.cookie=sName+'='+sValue+'; expires='+oDate+'; path=/'; //開始存
    }else{
        document.cookie=sName+'='+sValue+'; path=/'; //如果不需要時(shí)間的話,這樣存
    }
}
//獲取
function getCookie(sName){
    var str=document.cookie; //cookie獲取下來是一串字符串吗伤,
    var arr=str.split('; '); //然后我們切成數(shù)組
    // arr ->  password=123,n2=qq,abc=123
    for(var i=0;i<arr.length;i++){ //循環(huán)數(shù)組吃靠,
        //arr[i] ->  password=123
        var arr2=arr[i].split('='); //在把每一條切開成數(shù)組
        //[password,123]
        if(arr2[0]==sName){ //用我們要的那條cookie名字和每一條cookie的名字對(duì)比
            return arr2[1] //如果一樣,就把值給返回出去足淆。
        }
    }
    return '' //如果最后沒有我們也返回相同的數(shù)據(jù)格式巢块,空字符串
}
//刪除
function removeCookie(sName){
    setCookie(sName,'',-1); //刪除就直接把那條cookie時(shí)間設(shè)置成-1就行
}

比如我就來寫一個(gè)Cookie使用的例子吧:

那就拿最常用的效果選項(xiàng)卡來說吧

<!DOCTYPE html>
<html>
<head lang="en">
    <meta charset="UTF-8">
    <title>李鵬-前端開發(fā)-兩年經(jīng)驗(yàn)-13522974525</title>
    <style>
        * {
            margin: 0;
            padding: 0;
            list-style: none;
        }
        div{
            width: 100px;
            height: 100px;
            background: red;
            display: none;
        }
        div.on{
            display: block;
        }
        input.on{
            background: blue;
        }
    </style>
    <script src="cookie.js"></script>
    <script>
        window.onload=function(){
            var aInp=document.getElementsByTagName('input');
            var aDiv=document.getElementsByTagName('div');
            function tab(index){
                var index=index || 0; //這個(gè)是為了下面,因?yàn)橄旅嬷苯诱{(diào)用了一下巧号,有時(shí)候沒有存cookie族奢,所有就讓沒存的情況下默認(rèn)為0.
                for(var i=0;i<aInp.length;i++){
                    aInp[i].className='';
                    aDiv[i].className='';
                }
                aInp[index].className='on';
                aDiv[index].className='on';
            }
            //設(shè)置cookie
            tab(getCookie('index'));//頁面一打開調(diào)用一下,讓自動(dòng)停留在我們上次點(diǎn)擊的那個(gè)選項(xiàng)上丹鸿。

            for(var i=0;i<aInp.length;i++){
                (function(index){
                    aInp[i].onclick=function(){
                        tab(index);
                        setCookie('index',index,3); //開始存我們的cookie越走,記錄選項(xiàng)停留在哪個(gè)上面。
                    };
                })(i);

            }
        };
    </script>
</head>
<body>
<input type="button" value="aaa" class="on"/>
<input type="button" value="bbb"/>
<input type="button" value="ccc"/>
<div class="on">111</div>
<div>222</div>
<div>333</div>
</body>
</html>

以上結(jié)束靠欢。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末廊敌,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子门怪,更是在濱河造成了極大的恐慌骡澈,老刑警劉巖,帶你破解...
    沈念sama閱讀 218,386評(píng)論 6 506
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件掷空,死亡現(xiàn)場離奇詭異肋殴,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)坦弟,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,142評(píng)論 3 394
  • 文/潘曉璐 我一進(jìn)店門护锤,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人酿傍,你說我怎么就攤上這事蔽豺。” “怎么了拧粪?”我有些...
    開封第一講書人閱讀 164,704評(píng)論 0 353
  • 文/不壞的土叔 我叫張陵,是天一觀的道長沧侥。 經(jīng)常有香客問我可霎,道長,這世上最難降的妖魔是什么宴杀? 我笑而不...
    開封第一講書人閱讀 58,702評(píng)論 1 294
  • 正文 為了忘掉前任癣朗,我火速辦了婚禮,結(jié)果婚禮上旺罢,老公的妹妹穿的比我還像新娘旷余。我一直安慰自己绢记,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,716評(píng)論 6 392
  • 文/花漫 我一把揭開白布正卧。 她就那樣靜靜地躺著蠢熄,像睡著了一般。 火紅的嫁衣襯著肌膚如雪炉旷。 梳的紋絲不亂的頭發(fā)上签孔,一...
    開封第一講書人閱讀 51,573評(píng)論 1 305
  • 那天,我揣著相機(jī)與錄音窘行,去河邊找鬼饥追。 笑死,一個(gè)胖子當(dāng)著我的面吹牛罐盔,可吹牛的內(nèi)容都是我干的但绕。 我是一名探鬼主播,決...
    沈念sama閱讀 40,314評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼惶看,長吁一口氣:“原來是場噩夢(mèng)啊……” “哼捏顺!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起碳竟,我...
    開封第一講書人閱讀 39,230評(píng)論 0 276
  • 序言:老撾萬榮一對(duì)情侶失蹤草丧,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后莹桅,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體昌执,經(jīng)...
    沈念sama閱讀 45,680評(píng)論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,873評(píng)論 3 336
  • 正文 我和宋清朗相戀三年诈泼,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了懂拾。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 39,991評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡铐达,死狀恐怖岖赋,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情瓮孙,我是刑警寧澤唐断,帶...
    沈念sama閱讀 35,706評(píng)論 5 346
  • 正文 年R本政府宣布,位于F島的核電站杭抠,受9級(jí)特大地震影響脸甘,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜偏灿,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,329評(píng)論 3 330
  • 文/蒙蒙 一丹诀、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧,春花似錦铆遭、人聲如沸硝桩。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,910評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽碗脊。三九已至,卻和暖如春棍弄,著一層夾襖步出監(jiān)牢的瞬間望薄,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,038評(píng)論 1 270
  • 我被黑心中介騙來泰國打工呼畸, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留痕支,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 48,158評(píng)論 3 370
  • 正文 我出身青樓蛮原,卻偏偏與公主長得像卧须,于是被迫代替她去往敵國和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子儒陨,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,941評(píng)論 2 355

推薦閱讀更多精彩內(nèi)容