JavaScript 实现 Cookie 设置至当日24点过期及登录弹窗
作者:木棉时间:2026-10-30 11:43:55浏览:441
本文介绍如何使用JavaScript将Cookie有效期设置为当天24点,并在指定时间到达后执行回调函数以弹出欢迎登录界面。通过计算当前时间与目标时间的毫秒差,利用setTimeout实现定时触发,同时提供标准Cookie设置方法供参考。
JavaScript 设置 Cookie 至当日24点过期
以下代码示例仅供参考,支持通过指定参数Deadline格式的时间进行测试。若发现存在不严谨之处,欢迎指正。
// 设置cookie在当天指定时间点过期并提示
function setCookie(name,value,Deadline,callback){
// 获取当前日期对象
var curDate = new Date();
// 获取当前日期对应的时间戳
var curTime = curDate.getTime();
// 获取指定时间的时间戳
var endTime = convertTime(curDate,Deadline);
// 计算出指定时间与当前时间的时间差
var disTime = endTime - curTime;
// 设置cookie过期时间
document.setCookie = name + '=' + value + ';expires=' + disTime;
// 在指定时间到达后执行回调
setTimeout(callback,disTime);
}
setCookie('name','value','24:00:00',function(){
alert('cookie过期了');
});
// 获取指定时间的时间戳
function convertTime(nowDate,Deadline){
// 分割参数Deadline
var _dateArr = Deadline.split(':');
// 分别获取参数中对应的时、分、秒
var hours = parseInt(_dateArr[0]);
var minutes = parseInt(_dateArr[1]);
var seconds = parseInt(_dateArr[2]);
// 设置对应时分秒
nowDate.setHours(hours);
nowDate.setMinutes(minutes);
nowDate.setSeconds(seconds);
// 获取当前天中指定时分秒对应的毫秒数
var result = Date.parse(nowDate);
return result;
}
补充说明:
function setCookie(name,value,days){//设置cookie
var d = new Date();
d.setTime(d.getTime() + (days*24*60*60*1000));
var expires = "expires="+d.toUTCString();
document.cookie = name + "=" + value + "; " + expires;
}
以上介绍了JavaScript设置Cookie有效期至当天24点并弹出欢迎登录界面的方法,希望能对大家有所帮助。如有任何疑问,请留言,小编会及时回复。感谢大家对本站的支持!
作者最新文章
JS合并多个数组的三种方法:concat、spread与flat
2026-11-05 17:39:45
JavaScript怎么准确判断数据类型:typeof、instanceof与Object.prototype.toString
2026-11-05 17:09:21
JS中将数组和对象混合组装为JSON字符串
2026-11-05 16:41:42
JS运算符优先级与结合性的区别是什么?
2026-11-05 13:22:02
JS Map怎么只遍历Key或Value
2026-11-05 13:00:36
