当前位置:首页 > javascript > 正文内容

js cookie实现在一天内只执行一次

自由小鸟4年前 (2021-01-15)javascript2945
function versionExpireTime(key,method) {
    var v = getCookie(key);
    if (!v) {
        method(true);  //外面传进来的callback,方便告诉外部是否过期
        //获取第二天凌晨到当前时间的秒数
        var time_sec = 24 * 60 * 60 - (new Date().getHours() * 60 * 60 + new Date().getMinutes() * 60 + new Date().getSeconds());
        setCookie(key, "1", time_sec);
    }
}
function dosome(msg){
    console.log(msg);
}
//写cookies
function setCookie(name, value, second) {
    if (!second) {
    second = 7 * 24 * 60 * 60;//默认7天
    }
    var exp = new Date();
    exp.setTime(exp.getTime() + second * 1000);
    document.cookie = name + "=" + encodeURI(value) + ";expires=" + exp.toGMTString() + ";path=/";
}
//读取cookies
function getCookie(name) {
    if (document.cookie.length > 0) {
       let  c_start = document.cookie.indexOf(name + "=");//获取字符串的起点
        if (c_start != -1) {
        c_start = c_start + name.length + 1;//获取值的起点
        let c_end = document.cookie.indexOf(";", c_start);//获取结尾处
        if (c_end == -1) c_end = document.cookie.length;//如果是最后一个,结尾就是cookie字符串的结尾
            return decodeURI(document.cookie.substring(c_start, c_end));//截取字符串返回
        }
    }
    return '';
}

export default versionExpireTime;

版权声明:本文由Web学习之路发布,如需转载请注明出处。

本文链接:https://webge.net/?id=104

“js cookie实现在一天内只执行一次” 的相关文章

代理事件绑定

代理事件绑定

 代理绑定事件通用绑定事件的函数...

js类型转换

js类型转换

数据类型: 原始类型:        Boolean Null Undefined Number String Symbol     显示类型转换: ...

函数参数会生成新的作用域

函数参数会生成新的作用域

如果函数定义了参数就会自动生成新的作用域,这时候里面的变量值就会先从参数新的作用域找,如果没有就会再往上面找直到全局...

数组去重

var a=[1,3,4,5,6,1,3,9,6]; //代码是去重后的 function arrfn(data){ let newObj={}; for(let i=0;i<data.length;i++...

防抖和节流

如果我在一个时间内只执行一次,最好用防抖,如果只是想在执行时,设置一下间隔时间那么用节流 防抖是在一个时间内只能执行一次,如果频繁操作就会清除重新开始计算执行,我设置的时间内整个过程中只会执行一次/* 函数的防抖 debounce,不是某个事件触发就去执行函数,而是在指定的时间间隔内执行...