项目中遇到了要 设置localstorage的过期时间,并删除。虽然最后可以不用这个方法实现具体功能,但也记录一下吧。
以下是参考网上的写法,我只是在过期时间里多写了一个 removeItem 方法。

 set(key,value){
        const curTime = new Date().getTime();
        localStorage.setItem(key,JSON.stringify({data:value,time:curTime}));
    },
    get(key,exp){
        const data = localStorage.getItem(key);
        const dataObj = JSON.parse(data);
        if (new Date().getTime() - dataObj.time > exp) {
            console.log('信息已过期');
            // 过期之后删除数据,
            localStorage.removeItem('key');
            localStorage.clear(); // 删除全部key。
        }else{
            const dataObjDatatoJson = JSON.parse(dataObj.data)
            return dataObjDatatoJson;
        }
    }

get 的使用:

get('key', 1000*60*60) //一小时过期,并删除
get('key', 1000*60*60*24) //24小时过期,并删除

A_Ghost
29 声望4 粉丝

知道的越多,不知道的也就越多。