-
Notifications
You must be signed in to change notification settings - Fork 241
Open
Description
Code Explain
Code like the below:
later.date.localTime();
const timeStr = moment().add(1, 'm').format('HH:mm'); // time of next minute
const text = `at ${timeStr} also every 1 hour`; // want to trigger `fn` at next minute and every hour from now on.
console.log(`text: ${text}`)
const sched = later.parse.text(text);
console.log(`next 10 occurence: `, later.schedule(sched).next(24)); // this display right.
const fn = function() {
console.log(`curr time: `, moment().format('HH:mm:ss'));
console.log(`next 10 occurence: `, later.schedule(sched).next(24));
};
later.setInterval(fn, sched); // the `fn` function will be triggered 100+ times after one minute from now on.As commented above.
- I want to trigger at next minute AND every 1 hour from now on.
later.schedule.next()function works well. It displays exactly what I expect.- But, when invoke
setInterval(),fnwill be invoked 100+ times at the next minute in a flash.
How to Replay
You can replay the bug on https://jsfiddle.net/xLobgnuh/6/:
- open url.
- open console.
- run.
- wait the next minute come.
Log
When you run the code above, console log will be like this:
LOG - CLICK TO SHOW
(index):39 text: at 17:27 also every 1 hour
(index):42 next 10 occurence: (24) [Mon Feb 03 2020 17:26:27 GMT+0800 (中国标准时间), Mon Feb 03 2020 17:27:00 GMT+0800 (中国标准时间), Mon Feb 03 2020 18:00:00 GMT+0800 (中国标准时间), Mon Feb 03 2020 19:00:00 GMT+0800 (中国标准时间), Mon Feb 03 2020 20:00:00 GMT+0800 (中国标准时间), Mon Feb 03 2020 21:00:00 GMT+0800 (中国标准时间), Mon Feb 03 2020 22:00:00 GMT+0800 (中国标准时间), Mon Feb 03 2020 23:00:00 GMT+0800 (中国标准时间), Tue Feb 04 2020 00:00:00 GMT+0800 (中国标准时间), Tue Feb 04 2020 01:00:00 GMT+0800 (中国标准时间), Tue Feb 04 2020 02:00:00 GMT+0800 (中国标准时间), Tue Feb 04 2020 03:00:00 GMT+0800 (中国标准时间), Tue Feb 04 2020 04:00:00 GMT+0800 (中国标准时间), Tue Feb 04 2020 05:00:00 GMT+0800 (中国标准时间), Tue Feb 04 2020 06:00:00 GMT+0800 (中国标准时间), Tue Feb 04 2020 07:00:00 GMT+0800 (中国标准时间), Tue Feb 04 2020 08:00:00 GMT+0800 (中国标准时间), Tue Feb 04 2020 09:00:00 GMT+0800 (中国标准时间), Tue Feb 04 2020 10:00:00 GMT+0800 (中国标准时间), Tue Feb 04 2020 11:00:00 GMT+0800 (中国标准时间), Tue Feb 04 2020 12:00:00 GMT+0800 (中国标准时间), Tue Feb 04 2020 13:00:00 GMT+0800 (中国标准时间), Tue Feb 04 2020 14:00:00 GMT+0800 (中国标准时间), Tue Feb 04 2020 15:00:00 GMT+0800 (中国标准时间)]0: Mon Feb 03 2020 17:26:27 GMT+0800 (中国标准时间) {}1: Mon Feb 03 2020 17:27:00 GMT+0800 (中国标准时间) {}2: Mon Feb 03 2020 18:00:00 GMT+0800 (中国标准时间) {}3: Mon Feb 03 2020 19:00:00 GMT+0800 (中国标准时间) {}4: Mon Feb 03 2020 20:00:00 GMT+0800 (中国标准时间) {}5: Mon Feb 03 2020 21:00:00 GMT+0800 (中国标准时间) {}6: Mon Feb 03 2020 22:00:00 GMT+0800 (中国标准时间) {}7: Mon Feb 03 2020 23:00:00 GMT+0800 (中国标准时间) {}8: Tue Feb 04 2020 00:00:00 GMT+0800 (中国标准时间) {}9: Tue Feb 04 2020 01:00:00 GMT+0800 (中国标准时间) {}10: Tue Feb 04 2020 02:00:00 GMT+0800 (中国标准时间) {}11: Tue Feb 04 2020 03:00:00 GMT+0800 (中国标准时间) {}12: Tue Feb 04 2020 04:00:00 GMT+0800 (中国标准时间) {}13: Tue Feb 04 2020 05:00:00 GMT+0800 (中国标准时间) {}14: Tue Feb 04 2020 06:00:00 GMT+0800 (中国标准时间) {}15: Tue Feb 04 2020 07:00:00 GMT+0800 (中国标准时间) {}16: Tue Feb 04 2020 08:00:00 GMT+0800 (中国标准时间) {}17: Tue Feb 04 2020 09:00:00 GMT+0800 (中国标准时间) {}18: Tue Feb 04 2020 10:00:00 GMT+0800 (中国标准时间) {}19: Tue Feb 04 2020 11:00:00 GMT+0800 (中国标准时间) {}20: Tue Feb 04 2020 12:00:00 GMT+0800 (中国标准时间) {}21: Tue Feb 04 2020 13:00:00 GMT+0800 (中国标准时间) {}22: Tue Feb 04 2020 14:00:00 GMT+0800 (中国标准时间) {}23: Tue Feb 04 2020 15:00:00 GMT+0800 (中国标准时间) {}length: 24__proto__: Array(0)
(index):44 curr time: 17:27:00
(index):45 next 10 occurence: (24) [Mon Feb 03 2020 17:27:00 GMT+0800 (中国标准时间), Mon Feb 03 2020 17:27:00 GMT+0800 (中国标准时间), Mon Feb 03 2020 18:00:00 GMT+0800 (中国标准时间), Mon Feb 03 2020 19:00:00 GMT+0800 (中国标准时间), Mon Feb 03 2020 20:00:00 GMT+0800 (中国标准时间), Mon Feb 03 2020 21:00:00 GMT+0800 (中国标准时间), Mon Feb 03 2020 22:00:00 GMT+0800 (中国标准时间), Mon Feb 03 2020 23:00:00 GMT+0800 (中国标准时间), Tue Feb 04 2020 00:00:00 GMT+0800 (中国标准时间), Tue Feb 04 2020 01:00:00 GMT+0800 (中国标准时间), Tue Feb 04 2020 02:00:00 GMT+0800 (中国标准时间), Tue Feb 04 2020 03:00:00 GMT+0800 (中国标准时间), Tue Feb 04 2020 04:00:00 GMT+0800 (中国标准时间), Tue Feb 04 2020 05:00:00 GMT+0800 (中国标准时间), Tue Feb 04 2020 06:00:00 GMT+0800 (中国标准时间), Tue Feb 04 2020 07:00:00 GMT+0800 (中国标准时间), Tue Feb 04 2020 08:00:00 GMT+0800 (中国标准时间), Tue Feb 04 2020 09:00:00 GMT+0800 (中国标准时间), Tue Feb 04 2020 10:00:00 GMT+0800 (中国标准时间), Tue Feb 04 2020 11:00:00 GMT+0800 (中国标准时间), Tue Feb 04 2020 12:00:00 GMT+0800 (中国标准时间), Tue Feb 04 2020 13:00:00 GMT+0800 (中国标准时间), Tue Feb 04 2020 14:00:00 GMT+0800 (中国标准时间), Tue Feb 04 2020 15:00:00 GMT+0800 (中国标准时间)]
(index):44 curr time: 17:27:00
(index):45 next 10 occurence: (24) [Mon Feb 03 2020 17:27:00 GMT+0800 (中国标准时间), Mon Feb 03 2020 17:27:00 GMT+0800 (中国标准时间), Mon Feb 03 2020 18:00:00 GMT+0800 (中国标准时间), Mon Feb 03 2020 19:00:00 GMT+0800 (中国标准时间), Mon Feb 03 2020 20:00:00 GMT+0800 (中国标准时间), Mon Feb 03 2020 21:00:00 GMT+0800 (中国标准时间), Mon Feb 03 2020 22:00:00 GMT+0800 (中国标准时间), Mon Feb 03 2020 23:00:00 GMT+0800 (中国标准时间), Tue Feb 04 2020 00:00:00 GMT+0800 (中国标准时间), Tue Feb 04 2020 01:00:00 GMT+0800 (中国标准时间), Tue Feb 04 2020 02:00:00 GMT+0800 (中国标准时间), Tue Feb 04 2020 03:00:00 GMT+0800 (中国标准时间), Tue Feb 04 2020 04:00:00 GMT+0800 (中国标准时间), Tue Feb 04 2020 05:00:00 GMT+0800 (中国标准时间), Tue Feb 04 2020 06:00:00 GMT+0800 (中国标准时间), Tue Feb 04 2020 07:00:00 GMT+0800 (中国标准时间), Tue Feb 04 2020 08:00:00 GMT+0800 (中国标准时间), Tue Feb 04 2020 09:00:00 GMT+0800 (中国标准时间), Tue Feb 04 2020 10:00:00 GMT+0800 (中国标准时间), Tue Feb 04 2020 11:00:00 GMT+0800 (中国标准时间), Tue Feb 04 2020 12:00:00 GMT+0800 (中国标准时间), Tue Feb 04 2020 13:00:00 GMT+0800 (中国标准时间), Tue Feb 04 2020 14:00:00 GMT+0800 (中国标准时间), Tue Feb 04 2020 15:00:00 GMT+0800 (中国标准时间)]
(index):44 curr time: 17:27:00
(index):45 next 10 occurence: (24) [Mon Feb 03 2020 17:27:00 GMT+0800 (中国标准时间), Mon Feb 03 2020 17:27:00 GMT+0800 (中国标准时间), Mon Feb 03 2020 18:00:00 GMT+0800 (中国标准时间), Mon Feb 03 2020 19:00:00 GMT+0800 (中国标准时间), Mon Feb 03 2020 20:00:00 GMT+0800 (中国标准时间), Mon Feb 03 2020 21:00:00 GMT+0800 (中国标准时间), Mon Feb 03 2020 22:00:00 GMT+0800 (中国标准时间), Mon Feb 03 2020 23:00:00 GMT+0800 (中国标准时间), Tue Feb 04 2020 00:00:00 GMT+0800 (中国标准时间), Tue Feb 04 2020 01:00:00 GMT+0800 (中国标准时间), Tue Feb 04 2020 02:00:00 GMT+0800 (中国标准时间), Tue Feb 04 2020 03:00:00 GMT+0800 (中国标准时间), Tue Feb 04 2020 04:00:00 GMT+0800 (中国标准时间), Tue Feb 04 2020 05:00:00 GMT+0800 (中国标准时间), Tue Feb 04 2020 06:00:00 GMT+0800 (中国标准时间), Tue Feb 04 2020 07:00:00 GMT+0800 (中国标准时间), Tue Feb 04 2020 08:00:00 GMT+0800 (中国标准时间), Tue Feb 04 2020 09:00:00 GMT+0800 (中国标准时间), Tue Feb 04 2020 10:00:00 GMT+0800 (中国标准时间), Tue Feb 04 2020 11:00:00 GMT+0800 (中国标准时间), Tue Feb 04 2020 12:00:00 GMT+0800 (中国标准时间), Tue Feb 04 2020 13:00:00 GMT+0800 (中国标准时间), Tue Feb 04 2020 14:00:00 GMT+0800 (中国标准时间), Tue Feb 04 2020 15:00:00 GMT+0800 (中国标准时间)]
... (200+ lines omit) ....
(index):44 curr time: 17:27:01
(index):45 next 10 occurence: (24) [Mon Feb 03 2020 17:27:01 GMT+0800 (中国标准时间), Mon Feb 03 2020 18:00:00 GMT+0800 (中国标准时间), Mon Feb 03 2020 19:00:00 GMT+0800 (中国标准时间), Mon Feb 03 2020 20:00:00 GMT+0800 (中国标准时间), Mon Feb 03 2020 21:00:00 GMT+0800 (中国标准时间), Mon Feb 03 2020 22:00:00 GMT+0800 (中国标准时间), Mon Feb 03 2020 23:00:00 GMT+0800 (中国标准时间), Tue Feb 04 2020 00:00:00 GMT+0800 (中国标准时间), Tue Feb 04 2020 01:00:00 GMT+0800 (中国标准时间), Tue Feb 04 2020 02:00:00 GMT+0800 (中国标准时间), Tue Feb 04 2020 03:00:00 GMT+0800 (中国标准时间), Tue Feb 04 2020 04:00:00 GMT+0800 (中国标准时间), Tue Feb 04 2020 05:00:00 GMT+0800 (中国标准时间), Tue Feb 04 2020 06:00:00 GMT+0800 (中国标准时间), Tue Feb 04 2020 07:00:00 GMT+0800 (中国标准时间), Tue Feb 04 2020 08:00:00 GMT+0800 (中国标准时间), Tue Feb 04 2020 09:00:00 GMT+0800 (中国标准时间), Tue Feb 04 2020 10:00:00 GMT+0800 (中国标准时间), Tue Feb 04 2020 11:00:00 GMT+0800 (中国标准时间), Tue Feb 04 2020 12:00:00 GMT+0800 (中国标准时间), Tue Feb 04 2020 13:00:00 GMT+0800 (中国标准时间), Tue Feb 04 2020 14:00:00 GMT+0800 (中国标准时间), Tue Feb 04 2020 15:00:00 GMT+0800 (中国标准时间), Tue Feb 04 2020 16:00:00 GMT+0800 (中国标准时间)]
Metadata
Metadata
Assignees
Labels
No labels