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

資訊專欄INFORMATION COLUMN

js使用cookie

Riddler / 2478人閱讀

摘要:返回值已編碼的的副本。其中某些字符被替換成了十六進(jìn)制的轉(zhuǎn)義序列。

原文地址:http://www.maoyupeng.com/use-cookie-on-javascript.html

cookie存儲(chǔ)中文亂碼問(wèn)題

使用js期間,如果存儲(chǔ)的數(shù)據(jù)存在中文,則可能會(huì)遇到兼容性的問(wèn)題.我先說(shuō)說(shuō)我遇到的問(wèn)題(不要心急,在后面會(huì)提供完整的代碼案例):

安卓的手機(jī)上使用微信打開(kāi)我的測(cè)試網(wǎng)頁(yè),存儲(chǔ)中文沒(méi)有問(wèn)題,一切正常(不敢包所以安卓機(jī),反正我當(dāng)時(shí)用的的小米4是沒(méi)有遇到有中文亂碼的問(wèn)題)

ios的手機(jī)上使用微信打開(kāi)我的測(cè)試網(wǎng)頁(yè),存儲(chǔ)中文會(huì)出現(xiàn)詭異的問(wèn)題,具體情況請(qǐng)看示例 ↓

安卓手機(jī)

var setAndroidValue = {
    cityId: 197,
    cityName: "廣州"
}
cookie.set("androidTestCookie",setAndroidValue,30);

// 存儲(chǔ)成功后,獲取的值為,一切正常
console.log(JSON.stringify(cookie.get("androidTestCookie")))  //{cityId: 197,cityName: "廣州"}

ios手機(jī)

var setAndroidValue = {
    cityId: 197,
    cityName: "廣州"
}
cookie.set("androidTestCookie",setAndroidValue,30);

// 存儲(chǔ)成功后,獲取的值缺少了一截,個(gè)人估計(jì)就是因?yàn)橛龅街形牧?亂碼,沒(méi)有存儲(chǔ)進(jìn)去
console.log(JSON.stringify(cookie.get("androidTestCookie")))  //{cityId: 197,cityName: "
解決存儲(chǔ)cookie亂碼問(wèn)題

其實(shí)很簡(jiǎn)單,就是使用了escape()unescape()函數(shù)

escape(string)
函數(shù)可對(duì)字符串進(jìn)行編碼,這樣就可以在所有的計(jì)算機(jī)上讀取該字符串。返回值:已編碼的 string 的副本。其中某些字符被替換成了十六進(jìn)制的轉(zhuǎn)義序列。

unescape(string)
escape()剛好相反,就是解碼的

完整的示例代碼
var cookie = {
    set:function(key,val,time){//設(shè)置cookie方法
        var date=new Date(); //獲取當(dāng)前時(shí)間
        var expiresDays=time;  //將date設(shè)置為n天以后的時(shí)間
        date.setTime(date.getTime()+expiresDays*24*3600*1000); //格式化為cookie識(shí)別的時(shí)間
        document.cookie=key + "=" + escape(val) +";expires="+date.toGMTString();  //設(shè)置cookie
    },
    get:function(key){//獲取cookie方法
        /*獲取cookie參數(shù)*/
        var getCookie = document.cookie.replace(/[ ]/g,"");  //獲取cookie,并且將獲得的cookie格式化,去掉空格字符
        var arrCookie = getCookie.split(";")  //將獲得的cookie以"分號(hào)"為標(biāo)識(shí) 將cookie保存到arrCookie的數(shù)組中
        var tips;  //聲明變量tips
        for(var i=0;i
使用方法
cookie.set("key","value,中文也可以的",30)  //30天后失效

cookie.get("key")   // value,中文也可以的

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

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

相關(guān)文章

  • js-cookie源碼學(xué)習(xí)

    這篇文章最初發(fā)表在我自己搭建的站點(diǎn)js-cookie庫(kù)源碼學(xué)習(xí) 背景 最近在做項(xiàng)目的時(shí)候,前端登錄功能要做一個(gè)記住密碼的功能。但開(kāi)發(fā)用的框架中沒(méi)有實(shí)現(xiàn)這個(gè)功能,所以我就想自己實(shí)現(xiàn)這個(gè)功能。實(shí)現(xiàn)起來(lái)其實(shí)很簡(jiǎn)單,就是每次用戶在登錄頁(yè)面點(diǎn)擊登錄時(shí),把用戶輸入的用戶名和密碼保存到cookie中就可以了,當(dāng)用戶再登錄時(shí),再?gòu)腸ookie中獲取用戶名和密碼填充到表單中就可以了。當(dāng)然,也可以選擇保存在local...

    JellyBool 評(píng)論0 收藏0
  • cookie、Sessionstorage、Localstorage快速上手

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

    duan199226 評(píng)論0 收藏0
  • cookie、Sessionstorage、Localstorage快速上手

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

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

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

0條評(píng)論

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