前端頁面之間傳值--利用cookie存儲全局變量

? ? ? ?需求說明:需要在頁面之間進(jìn)行傳值,但又無法直接通過在URL中拼接參數(shù)的方法獲取。此時可以利用前端瀏覽器的一個屬性cookie,將所需信息存放到cookie中,而后再獲取利用,進(jìn)行下一系列的操作。
? ? ? ?設(shè)置、獲取cookie的封裝函數(shù)方法如下:

//將全局變量存入cookie,參數(shù)分別為key名稱,key對應(yīng)的value值,以及cookie的有效期
//有效期的單位是"天"
function setCookie(c_name,value,expiredays)
{
    var exdate = new Date();
    exdate.setDate(exdate.getDate()+expiredays);
    //對value值進(jìn)行編碼
    document.cookie = c_name + "=" + escape(value)+
    ((expiredays==null) ? "" : ";expires="+exdate.toGMTString());
}
//從cookie中獲取值
function getCookie(c_name)
{
    if(document.cookie.length>0){
        c_start = document.cookie.indexOf(c_name + "=");
        if(c_start!=-1){ 
            c_start = c_start + c_name.length+1;
            c_end = document.cookie.indexOf(";",c_start);
            if(c_end==-1) 
                c_end = document.cookie.length;
                //解碼
                return unescape(document.cookie.substring(c_start,c_end));
        } 
      }
    return "";
}
/*使用示例*/
  //設(shè)置cookie
  setCookie("username","wlm","365");
  //獲取cookie
  var username_val = getCookie("username"); 

? ? ? ?注:上述設(shè)置、獲取方法只能是存儲和獲取字符串,而不能是對象。即每次存儲cookie,對應(yīng)key的value值必須是單個的字符串。
以上。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容