改进此代码以比较 2 时间格式 (HH:MM:SS)

Improvement to this code to compare 2 time in format (HH:MM:SS)

我写了一些代码来比较 2 次字符串格式 (HH:MM:SS)。

var time = new Date();
var current_time_str = time.getHours() + ":" + time.getMinutes() + ":" + time.getSeconds();

var deadline= "16:00:00" //hh:mm:ss
if ( (current_time_str) > (deadline))
{
    console.log("deadline has passed");
}

代码实际上通过简单地比较字符串来工作。但是,我担心它是否只是运气巧合,因为该字符串只是一种 ASCII 表示形式。还有其他方法可以比较这 2 次吗?我正在使用 node.js

一般来说,比较两个 Date 对象比比较字符串更安全。

你可以这样做:

// Get current date/time
var now = new Date();

// Set up deadline date/time
var deadline = new Date();
deadline.setHours(16);
deadline.setMinutes(0);

// Check if the current time is after the deadline
if( now > deadline ) {
    alert('after deadline');
}
else {
    alert('before deadline');
}

http://jsfiddle.net/md63mbpd/