如何将时间设置为没有日期的变量

How to set time to a variable without the date

我正在尝试为两个变量设置特定时间,但似乎无法正确设置语法格式。我希望能够在下面指定的特定时间设置 Shift 1 和 Shift 2。

我只想在 IF 语句中使用这些时间,以便默认选中单选按钮。白班按钮和夜班按钮。如果当前时间在班次 1 之间,则选中日班按钮。

Date.prototype.currentTime = function(){ 
    return ((this.getHours()>12)?(this.getHours()-12):this.getHours()) +":"+ this.getMinutes()+((this.getHours()>12)?('PM'):'AM'); };

var d1= new Date(); 
var d2 = new Date();
d1.setHours(7);
d1.setMinutes(10);
d2.setHours(19);
d2.setMinutes(10);
alert(d1.currentTime());
alert(d2.currentTime());

谢谢任何帮助我们都感激不尽。

Getting the Data

有多种不同的方法可以做到这一点。首先是从日期对象获取数据的方法:

var d = new Date();
var n = d.toTimeString();

不幸的是,这将输出类似“12:30:30 GMT-0500(东部标准时间)”的内容

您还可以尝试使用 getHours() 和 getMinutes 函数来获取当前时区的小时和分钟。

var d = new Date();
var hours = d.getHours();
var minutes = d.getMinutes();

Setting the Data

这很容易做到,就像从日期对象中获取数据一样。使用以下代码将时间设置为您想要的时间。替换您看到 11 的数字以符合您的需要。 注意:这次是军事风格时间! 1 = 凌晨 1 点,13 = 下午 1 点,等等

var d = new Date();
d.setHours(11);
d.setMinutes(11);
d.setSeconds(11);

结果:11:11:11

你可以试试这个:

http://jsfiddle.net/apq59j9u/

Date.prototype.currentTime = function(){ 
return ((this.getHours()>12)?(this.getHours()-12):this.getHours()) +":"+ this.getMinutes()+((this.getHours()>12)?('PM'):'AM'); };

var d1= new Date(); 
var d2 = new Date();
d1.setHours(7);
d1.setMinutes(10);
d2.setHours(19);
d2.setMinutes(10);
alert(d1.currentTime());
alert(d2.currentTime());

您无需比较 Date 对象即可使用, 只需将小时数作为整数与 now.getHours():

中的整数进行比较
var now= new Date().getHours();
if(now>6 && now<19){
    //check day shift button;
}
// else check niteshift button