我想确保日期是5分钟。 我正在使用这个简单的检查...
var date = new Date();
if (date.getTime() % 300000 === 0) {
console.log('date is even 5 minutes');
}
有人能看到这种方法有任何缺陷吗? 是否有时间不起作用?
编辑这是用于验证来自用户的POST输入...
答案 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 )