我现在正在构建一个 chrome 扩展。
我想设置一个在每天 23:59:59 触发的闹钟,这样我可以在一天结束时重置一些已保存的设置。
我在下面写了这段代码,但是我不习惯使用日期对象。而且我担心这段代码是否可以正常工作并且不会搞砸一切。
特别是,我担心第二天再次设置警报的代码。
var day = now.getDate() + 1;
要获取第二天的日期,我只需将“now.getDate()”的返回值加 1。但是,我想知道“now.getDate()”的返回值是否是月底,因此,加 1 最终会得到不存在的日期。
请查看我的代码并告诉我这是否正常工作。
先感谢您!!
var now = new Date();
var year = now.getFullYear();
var month = now.getMonth();
var day = now.getDate();
var timestamp = Number(new Date(year, month, day, 23, 59, 59, 0));
//set an alarm for today at 23:59:59.
chrome.alarms.create('resetSpentTime', {
when: timestamp
});
// when alarm fires, do the following.
chrome.alarms.onAlarm.addListener(function() {
//clear some saved settings at the end of day.
//After that, set an alarm again for tomorrow at 23:59:59.
var now = new Date();
var year = now.getFullYear();
var month = now.getMonth();
var day = now.getDate() + 1;
var timestamp = Number(new Date(year, month, day, 23, 59, 59, 0));
//set an alarm for tomorrow at 23:59:59.
chrome.alarms.create('resetSpentTime', {
when: timestamp
});
})