1

做一个简单的返回函数来检查它是否在晚上 11 点到早上 7 点之间的最佳方法是什么?

有这样的想法,但问题是凌晨 1 点将是 1,并且不会大于 23,但 23(晚上 11 点)会。

return (((new Date()).getHours() >= 23) && ((new Date()).getHours() <=7))
4

1 回答 1

6

非常接近,但你应该使用 || 不是 &&

var currentHour = (new Date()).getHours();
return (currentHour >= 23) || (currentHour <= 7);

如果时间大于或等于 23(晚上 11 点)或者如果时间小于或等于 7(早上 7 点),那么它是在晚上 11 点到早上 7 点之间。

中午,getHours() == 12,所以 12 >= 23 = false || 12 <= 7 = false,因此返回 false;

于 2013-01-27T10:00:03.690 回答