js緩存cookie,sessionStorage,localeStorage用法及區別


一直都是添加做后台,不知道js還有個前端緩存,今天做網址剛好用到,大概研究一下就,感覺蠻好用的分享給大家

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>js緩存</title>
</head>
<body>

    <script>
        /*
          一.什么是web緩存?
             緩存是存儲在客戶端和服務端之間上的副本。
             js緩存有哪些cookie,sessionStorage,localeStorage

          二.區別
             cookie         瀏覽器端用,大小不能超過4k,可以設置時間,關閉窗口在有效時間內還有效果     
             sessionStorage 一般服務器用,大小5M,關閉窗口就刪除了
             localeStorage  服務器用,永久,大小5M,關閉窗口一直存在,只能手動清理,或者人工刪除
        */

        //@ JS cookie:設置 讀取 刪除
        //設置cookie
        function setCookie(name,value){
            let Days = 30;
            let exp = new Date();
            exp.setTime(exp.getTime() + Days*24*60*60*1000);
            document.cookie = name + "="+ escape(value) + ";expires=" + exp.toGMTString();
        }
 
        //獲取cookie
        function getCookie(name){
            let arr,reg=new RegExp("(^| )"+name+"=([^;]*)(;|$)");
            if(arr=document.cookie.match(reg)){
                return unescape(arr[2]); 
            }else{
            return null;
          }
        }
 
       //刪除cookie
       function delCookie(name) {
           let exp = new Date();
           exp.setTime(exp.getTime() - 1);
           let cval=getCookie(name);
           if(cval!=null){
           document.cookie= name + "="+cval+";expires="+exp.toGMTString();
        } 
       }

       //@ JS sessionStorage,localeStorage:設置 讀取 刪除
       //以key為名稱存儲一個值value
       sessionStorage.setItem("key","value");
       //獲取名稱為key的值
       sessionStorage.getItem("key");
       //刪除名稱為key的信息。
       sessionStorage.removeItem("key");
       //清空所有
       sessionStorage.clear();

    </script>

</body>
</html>

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM