Spúšťajte kód podľa plánu pomocou CRON
CRON(line, fn) spustí fn(date) vždy, keď aktuálny čas zodpovedá line. Riadok má päť polí ako v Unix cron: minute hour day-of-month month day-of-week. Každé pole prijíma * (ľubovoľná hodnota), 1,5,9 (zoznam), 1-5 (rozsah) alebo presné číslo. Názvy dní ako mon alebo fri fungujú v poslednom poli.
Hodnoty píšte ako zoznam, 0,15,30,45: zodpovedá presne časom, ktoré uvediete.
Total.js kontroluje zaregistrované úlohy raz za minútu, takže najjemnejšie rozlíšenie je jedna minúta. CRON() vráti objekt: job.remove() úlohu odregistruje a job.check(date) povie, či dátum zodpovedá riadku, čo je zároveň najjednoduchší spôsob, ako otestovať plán bez čakania.
exports.install = function() {
ROUTE('GET /cron/matches/', matches);
ROUTE('GET /cron/runs/', runs);
};
var counter = { runs: 0 };
// Every 15 minutes, from Monday to Friday, between 09:00 and 17:59
var job = CRON('0,15,30,45 9-17 * * 1-5', function(date) {
counter.runs++;
});
function matches($) {
var dates = {
monday_0930: new Date(2026, 0, 5, 9, 30),
monday_0931: new Date(2026, 0, 5, 9, 31),
monday_1830: new Date(2026, 0, 5, 18, 30),
sunday_0930: new Date(2026, 0, 4, 9, 30)
};
var output = {};
for (var key in dates)
output[key] = job.check(dates[key]);
$.json(output);
}
function runs($) {
$.json(counter);
}