Tengo una función principal(). Quiero ejecutar esta función a las 9:25, 1:25, 5:25 (considerando el tiempo de reloj de 12 horas, significa 9:30 de la mañana y de la noche). Cuando el reloj marca cualquiera de las horas mencionadas anteriormente, la función debería ejecutarse una vez. Entonces la función debería esperar a la próxima vez. La función similar se ejecuta a las 9:30 de la mañana (pero solo una vez y luego se detiene), luego debe esperar a la 1:25 de la tarde. Quiero que todo esto esté codificado en Javascript. ¿Hay algún planificador que me ayude...
Haz algo como esto:
var times = [[9, 25], [1, 25], [5, 25]]; var lastrun; function checktime(){ now = new Date(); // Get the current time if (lastrun != null){ if (now-lastrun > 60000) return; // Wait until a minute has elapsed // (In order to avoid the function running twice within the same minute) } ok = false; for (time of times){ // Iterate through target times target = new Date(); // Create a new date where the target time will be held target.setHours(time[0]); // Set the hour and minute to the target time target.setMinutes(time[1]); if (now.getTime() >= target.getTime()){ // Check if the target time has been reached ok = true; break; } } if (ok){ lastrun = now; // Store the time when the function was last run main(); // Run the main function if 'ok' is true } } setInterval(checktime, 1000);