localStorage的到期時间设定的方式详解

2021-02-23 02:32 jianzhan

大家都了解localStorage不积极删掉,始终不容易消毁,那末怎样设定localStorage的到期時间呢,今日大家来1起尝试1下!

<script type="text/javascript">
    //封裝到期操纵编码
    function set(key,value){
        var curTime = new Date().getTime();
        localStorage.setItem(key,JSON.stringify({data:value,time:curTime}));
    }
    function get(key,exp){
        var data = localStorage.getItem(key);
        var dataObj = JSON.parse(data);
        if (new Date().getTime() - dataObj.time>exp) {
            console.log('信息内容已到期');
            //alert("信息内容已到期")
        }else{
            //console.log("data="+dataObj.data);
            //console.log(JSON.parse(dataObj.data));
            var dataObjDatatoJson = JSON.parse(dataObj.data)
            return dataObjDatatoJson;
        }
    }
 </script>

应用情景:

1.运用当地数据信息,降低互联网传送
2.弱互联网自然环境下,高延迟时间,低带宽,尽可能把数据信息当地化

应用方式:

<script>
window.onload = function(){
    var Ipt = document.getElementById('input1');
    var value = '{"name":"和派孔明","Age":"18","address":"陆家嘴金融业城"}';
    set('information',value);

    Ipt.onclick = function(){
        //var dataObjData=get('information',1000);//到期時间为1秒,一切正常状况下,你点一下的情况下早已到期
        //var dataObjData=get('information',1000*60);//到期時间为1分钟
        //var dataObjData=get('information',1000*60*60);//到期時间为1小时
        //var Obj=get('information',1000*60*60*24);//到期時间为24小时
        var dataObjData=get('information',1000*60*60*24*7);//到期時间为1周
        console.log(dataObjData || null);
            if (dataObjData!="" && dataObjData!=null) {
                    console.log("名字:"+dataObjData.name);
                    console.log("年纪:"+dataObjData.Age );
                    console.log("详细地址:"+dataObjData.Age );
            }else{
                alert("获得的信息内容早已到期");
            }   
    }
}
</script>

localStorage到期操纵运作编码結果之未到期

localStorage到期操纵运作编码結果之已到期

以上便是本文的所有內容,期待对大伙儿的学习培训有一定的协助,也期待大伙儿多多适用脚本制作之家。