我正在尝试将特定时间设置为两个变量,但似乎无法正确格式化语法。我希望能够将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());
谢谢任何帮助表示赞赏。
答案 0 :(得分: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());
答案 1 :(得分:1)
您无需比较Date对象供您使用, 只需将小时作为整数与now.getHours()的整数进行比较:
var now= new Date().getHours();
if(now>6 && now<19){
//check day shift button;
}
// else check niteshift button
答案 2 :(得分:0)
获取数据
有许多不同的方法可以做到这一点。首先,这是一种从日期对象获取数据的方法:
var d = new Date();
var n = d.toTimeString();
不幸的是,这将输出类似于&#34; 12:30:30 GMT-0500(东部标准时间)&#34;
您还可以尝试使用getHours()和getMinutes函数来获取当前时区的小时和分钟。
var d = new Date();
var hours = d.getHours();
var minutes = d.getMinutes();
设置数据
这很容易做到,就像从日期对象获取数据一样。使用以下代码将时间设置为您想要的时间。将您看到的数字替换为11以符合您的需求。 注意:这次是军用时间! 1 = 1am,13 = 1pm,等等。
var d = new Date();
d.setHours(11);
d.setMinutes(11);
d.setSeconds(11);
结果:11:11:11