JavaScript 每 15 分钟计算一个值,并在午夜重置它



我正在尝试计算一个值,从午夜开始,每 15 分钟一次,并在午夜将值重置为 0。

这个想法是每分钟检查一次时间,并在午夜 (00:00( 设置一个新的 15 分钟间隔来进行计算。

我正在使用这个:

setInterval(function() { 
    var date = new Date(); 
    if(date.getHours() == 0 && date.getMinutes() == 0){ 
       setInterval(calcFunction, 900000);
    }
}, 60000);
var calcFunction = function() { 
    var myValue = 0;
    if(date1.getHours() == 0 && date1.getMinutes() == 0) {// Check for midnight
        myValue = 0;        // resets value
    } else {
        myValue=myValue + Math.random();  
    }
    console("Value: " + myValue);
};

问题是这无法正常工作。该值每分钟计算一次,每 4 天重置一次。

让函数每刻钟(00、15、30、45(调用一次更简单的方法是使用 %(模(运算符:

setInterval(function() { 
    var date = new Date(); 
    if((date.getMinutes() % 15) === 0){ 
       calcFunction();
    }
}, 60000);

此外,您的calcFunction在函数内部设置myValue = 0,这意味着每次调用它时它都会重置为零,您可能希望将其移动到函数之外。

最新更新