成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

cookie、sessionStorage、localStorage

xuweijian / 1386人閱讀

摘要:之前只知道的一些存儲(chǔ)量,過期時(shí)間上的區(qū)別,今天仔細(xì)研究了一下它們用法上的區(qū)別。這個(gè)限制確保了儲(chǔ)存在中的信息只能讓批準(zhǔn)的接受者訪問,而無法被其他域訪問。中所有的名字和值都是經(jīng)過編碼的,所以必須使用來解碼。屬于永久性存儲(chǔ)。

之前只知道cookie、sessionStorage、localStorage的一些存儲(chǔ)量,過期時(shí)間上的區(qū)別,今天仔細(xì)研究了一下它們用法上的區(qū)別。 cookie

cookie的本質(zhì)是在綁定的特定的域名下的。當(dāng)服務(wù)器發(fā)送的HTTP響應(yīng)頭中包含cookie會(huì)話信息時(shí)({key,value}形式),瀏覽器會(huì)保存這樣的會(huì)話信息,并在再次給創(chuàng)建它的域名發(fā)送請(qǐng)求時(shí),都會(huì)包含這個(gè)cookie。這個(gè)限制確保了儲(chǔ)存在cookie中的信息只能讓批準(zhǔn)的接受者訪問,而無法被其他域訪問。

JavaScript中的cookie

在JavaScript中操作cookie有點(diǎn)復(fù)雜,因?yàn)橹挥蠦OM的document.cookie屬性,返回頁面可用的所有cookie的字符串,一系列有逗號(hào)分隔開的鍵值對(duì)。
document.cookie屬性可以設(shè)置新的cookie字符串,并不會(huì)覆蓋cookie,除非cookie的名稱已經(jīng)存在。

cookie中所有的名字和值都是經(jīng)過URL編碼的,所以必須使用decodeURIComponent()來解碼。

由于JavaScript中讀寫cookie不夠直觀,所以需要封裝一些方法來方便cookie的操作。例如:讀、寫、刪除操作。

設(shè)置cookie:

function setCookie(name,value) 
{ 
    var Days = 30; 
    var exp = new Date(); 
    exp.setTime(exp.getTime() + Days*24*60*60*1000); 
    document.cookie = name + "="+ escape (value) + ";expires=" + exp.toGMTString(); 
}

讀取cookie

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

刪除cookie
function delCookie(name)
{

var exp = new Date(); 
exp.setTime(exp.getTime() - 1); 
var cval=getCookie(name); 
if(cval!=null) 
    document.cookie= name + "="+cval+";expires="+exp.toGMTString(); 

}

這樣封裝起來就很方便使用啦!

sessionStorage和localStorage

sessionStorage和localStorage都是在HTML5中提出的,都是以window對(duì)象屬性的形式存在,用來在客戶端存儲(chǔ)會(huì)話數(shù)據(jù)。
sessionStorage和localStorage都是Storage類型的實(shí)例。所以它們有clear()、getItem(name)、key(index)、removeItem(name)、setItem(name,value)方法。

sessionStorage對(duì)象存儲(chǔ)特定于某個(gè)會(huì)話的數(shù)據(jù),也就是該數(shù)據(jù)只保存到瀏覽器關(guān)閉。localStorage屬于永久性存儲(chǔ)。切它們的存儲(chǔ)量也大于cookie,因?yàn)g覽器而已,基本可以達(dá)到有5M。

sessionStorage和localStorage只能存儲(chǔ)字符串類型數(shù)據(jù),無法直接存儲(chǔ)數(shù)組類型和JSON對(duì)象,如果有需求該怎樣做呢?其實(shí)也很簡(jiǎn)單。
首先將JSON對(duì)象通過JSON.stringify()方法轉(zhuǎn)換成字符串,再存儲(chǔ)到sessionstorage中,然后通過JSON.parse()方法將字符串轉(zhuǎn)換成JSON格式即可。

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/96231.html

相關(guān)文章

  • cookie、Sessionstorage、Localstorage快速上手

    摘要:快速上手先說區(qū)別數(shù)據(jù)大小不能超過??梢栽诤蠖嗽O(shè)置修改,數(shù)據(jù)僅在本地瀏覽器保存。數(shù)據(jù)存儲(chǔ)在瀏覽器僅在瀏覽器為關(guān)閉的狀態(tài),關(guān)閉窗口后數(shù)據(jù)就會(huì)銷毀。默認(rèn)情況下,屬于當(dāng)前頁面。 cookie、Sessionstorage、Localstorage快速上手 先說區(qū)別 cookie: 數(shù)據(jù)大小不能超過4KB。 不管是否有需求,cookie數(shù)據(jù)都會(huì)在HTTP請(qǐng)求中攜帶,在瀏覽器和服務(wù)器中來回傳遞,...

    duan199226 評(píng)論0 收藏0
  • 詳說 Cookie, LocalStorageSessionStorage

    摘要:顧名思義,確實(shí)非常小,它的大小限制為左右,是網(wǎng)景公司的前雇員在年月的發(fā)明。是標(biāo)準(zhǔn)中新加入的技術(shù),它并不是什么劃時(shí)代的新東西。特性與的接口類似,但保存數(shù)據(jù)的生命周期與不同。但當(dāng)頁面關(guān)閉后,中的數(shù)據(jù)就會(huì)被清空。 本文最初發(fā)布于我的個(gè)人博客:咀嚼之味 最近在找暑期實(shí)習(xí),其中百度、網(wǎng)易游戲、阿里的面試都問到一些關(guān)于HTML5的東西,問題大多是這樣開頭的:你用過什么HTML5的技術(shù)呀?...

    endless_road 評(píng)論0 收藏0
  • localStorage、sessionStorage、Cookie的區(qū)別及用法

    摘要:的區(qū)別及用法是本地存儲(chǔ),存儲(chǔ)在客戶端,包括和。僅在當(dāng)前會(huì)話下有效,關(guān)閉頁面或?yàn)g覽器后被清除。源生接口可以接受,亦可再次封裝來對(duì)和有更好的支持。但需要程序員自己封裝,源生的接口不友好。每個(gè)最多只能有條,每個(gè)長(zhǎng)度不能超過。 localStorage、sessionStorage、Cookie的區(qū)別及用法 showImg(https://segmentfault.com/img/bVYLlH...

    sf_wangchong 評(píng)論0 收藏0
  • cookie、SessionstorageLocalstorage快速上手

    摘要:快速上手先說區(qū)別數(shù)據(jù)大小不能超過??梢栽诤蠖嗽O(shè)置修改,數(shù)據(jù)僅在本地瀏覽器保存。數(shù)據(jù)存儲(chǔ)在瀏覽器僅在瀏覽器為關(guān)閉的狀態(tài),關(guān)閉窗口后數(shù)據(jù)就會(huì)銷毀。默認(rèn)情況下,屬于當(dāng)前頁面。 cookie、Sessionstorage、Localstorage快速上手 先說區(qū)別 cookie: 數(shù)據(jù)大小不能超過4KB。 不管是否有需求,cookie數(shù)據(jù)都會(huì)在HTTP請(qǐng)求中攜帶,在瀏覽器和服務(wù)器中來回傳遞,...

    Galence 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

xuweijian

|高級(jí)講師

TA的文章

閱讀更多
最新活動(dòng)
閱讀需要支付1元查看
<