确保日期甚至是5分钟

时间:2014-11-14 13:52:45

标签: javascript

我想确保日期是5分钟。 我正在使用这个简单的检查...

var date = new Date();
if (date.getTime() % 300000 === 0) {
    console.log('date is even 5 minutes');
} 

有人能看到这种方法有任何缺陷吗? 是否有时间不起作用?

编辑这是用于验证来自用户的POST输入...

1 个答案:

答案 0 :(得分:1)

尝试类似:

var date = new Date();
if ( parseInt(date.getTime() / 1000 ) % 300 === 0) {
    console.log('date is even 5 minutes');
}

修改

添加了定义检查精度的可能性:

var 
  date = new Date(),
  precision = 1000; // precision in ms

if ( parseInt( date.getTime() / precision, 10 ) % ( 300000 / precision ) === 0) {
    console.log('date is even 5 minutes');
} 

编辑2 基于问题变更尝试: 找到最接近的5分钟多日期

Math.floor(( new Date().getTime() + 2.5*6000 ) / 30000 ) * 30000 )