中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

javascript 中Cookie讀、寫與刪除操作的案例

發布時間:2020-10-14 15:02:43 來源:億速云 閱讀:103 作者:小新 欄目:web開發

這篇文章主要介紹javascript 中Cookie讀、寫與刪除操作的案例,文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!

javascript 中Cookie讀、寫與刪除操作

前言:

在這個前端橫行的時候,頁面之間的交互需要數據的傳遞,有的數據通過url傳參的形式可以很好地解決,但是對于部分需要改變的參數,你如說從頁面A到頁面B選擇數據,然后從頁面B將數據再傳到頁面A(典型的栗子就是收貨地址的選擇),針對這一塊我是通過存儲cookie來解決的。

對于cookie的操作我給出了一些簡單的封裝,當然也借鑒了前輩們經驗,自己糅合了一下,對于cookie的操作,無非是讀寫和刪除,我們首先來看一下寫的操作,有寫才有讀,進而進行刪除等操作。

/**
 * 設置COOKIE
 * @param name 設置cookie的屬性名
 * @param value 設置cookie的屬性值
 * @param time  設置cookie的時間
 */

function setCookie(name, value , time) {
  time = time ? parseFloat(time) : 0 ;
  var exp = new Date();
  exp.setTime(exp.getTime() + time);
  // escape 這種編碼方式過時了 改用 encodeURIComponent
  // document.cookie = name + "=" + escape(value) + ";expires=" + (time ? exp.toGMTString() : 'session');
  document.cookie = name + "=" + encodeURIComponent(value) + ";expires=" + (time ? exp.toGMTString() : 'session');
}

我們有了寫的操作了,那么我們再來看看對于讀的操作。

/**
 * 獲取cookie
 * @param name
 * @returns {null}
 */

function getCookie(name) {
  var arr, reg = new RegExp("(^| )" + name + "=([^;]*)(;|$)");
  if (arr = document.cookie.match(reg))
    //unescape這種解碼方式好像過時了,可以采用decodeURIComponent解碼方式
    //return unescape(arr[2]);
     return decodeURIComponent(arr[2]);
  else
    return null;
}

接下就是對cookie的刪除操作了,其實這個操作很簡單,就是將cookie設置過期,cookie就自動失效了

/**
 * 刪除cookie
 * @param name
 */

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();
}

以上就是對cookie的一些簡單操作

接下來我們來談一點cookie的深層次的問題:cookie的跨域

 Js跨域同步cookie怎么實現
    document.cookie = "name=" + "value;" + "expires=" + "datatime;" + "domain=" + "" + "path=" + "/path" + "; secure";

/**
 * 刪除cookie
 * value Cookie值
 * expires 有效期截至(單位毫秒)
 * path 子目錄
 * domain 有效域
 * secure 是否安全
 */

<iframe src='http://網站:1234/test/Index' width='100' height='100' style="display:none"></iframe>

/*
*原頁面js里 window.location = "http://另外一個網站:1234/GetCookie/Index?" + document.cookie;跳到另外一個站,另外一個站獲取cookie,設置cookie
*/

 var url = window.location.toString();//獲取地址
 var get = url.substring(url.indexOf("liuph"));//獲取變量和變量值
 var idx = get.indexOf("=");//獲取變量名長度
 if (idx != -1) {
    var name = get.substring(0, idx);//獲取變量名
    var val = get.substring(idx + 1);//獲取變量值
    setCookie(name, val, 1);//創建Cookie
  }

以上是javascript 中Cookie讀、寫與刪除操作的案例的所有內容,感謝各位的閱讀!希望分享的內容對大家有幫助,更多相關知識,歡迎關注億速云行業資訊頻道!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

英德市| 拉萨市| 乐都县| 留坝县| 辰溪县| 息烽县| 涿鹿县| 高淳县| 海丰县| 鄄城县| 上林县| 洪江市| 新密市| 盘山县| 通州区| 察隅县| 宾阳县| 睢宁县| 靖州| 六盘水市| 汝州市| 玉门市| 汕尾市| 沧州市| 南召县| 仁布县| 陈巴尔虎旗| 揭东县| 正安县| 阳城县| 芜湖市| 邛崃市| 南宫市| 敖汉旗| 嫩江县| 怀远县| 巴东县| 蒙阴县| 绥宁县| 余江县| 漠河县|