我正试图写一个声明,说"如果时间是这个,那么就是那个".我可以使用get hours并获得分钟.但是,我在结合9:30这样的时间时遇到了问题.
例,
var now = new Date();
var hour = now.getHours();
var day = now.getDay();
var mintues = now.getMinutes();
if (day == 0 && hour >= 9 && hour <= 11 && mintues >= 30) {
document.write(now);
}
Run Code Online (Sandbox Code Playgroud)
这只有当时间在9:30之间时间为10时.一旦时钟到达10,则分钟<30并且脚本中断.
关于如何更好地融入时间函数以使这一理论发挥作用的任何想法?
谢谢,
使用new Date().getTime()返回毫秒来进行更容易的比较.这样就不需要检查小时,分钟,秒,毫秒.小提琴链接
var d930 = new Date(2010, 12, 21, 9, 30, 0, 0), // today 9:30:00:000
d931 = new Date(2010, 12, 21, 9, 31, 0, 0), // today 9:31:00:000
t930 = d930.getTime(),
t931 = d931.getTime();
console.log(t931 > t930);
Run Code Online (Sandbox Code Playgroud)
这样您的代码可以在9:30时间内进行静态检查.
var time930 = new Date(2010, 12, 21, 9, 30, 0, 0).getTime(),
sunday = 0,
now = new Date();
if(now.getDay() == sunday && now.getTime() >= time930){
/* do stuff */
}
Run Code Online (Sandbox Code Playgroud)
您有一些拼写错误和基本的 javascript 错误。
可能想复习一下基础知识。
W3Schools 是我学习我所知道的一切的地方。如果你修复它们,它工作正常......
var now = new Date();
var hour = now.getHours();
var day = now.getDay();
var minutes = now.getMinutes();
if(day == 0 && hour == 9 && minutes < 30 && minutes > 10 || day == 0 && hour == 9)
document.write('Time is between 9:10 and 9:30');
Run Code Online (Sandbox Code Playgroud)
将 if 语句视为基本逻辑。
如果当天是星期日(0)
并且小时是 9
并且分钟大于 10 并且分钟小于 10 或者当天是星期日(0)
并且小时在 9 之前。
| 归档时间: |
|
| 查看次数: |
20876 次 |
| 最近记录: |