判断一个时间是否处于指定的时间段内代码实例

快乐打工仔 分类:实例代码

本章节分享一段代码实例,它实现了判断一个时间是否处于指定时间段内的功能。

代码实例如下:

var time_range = function (beginTime, endTime, nowTime) {
  var strb = beginTime.split (":");
  if (strb.length != 2) {
    return false;
  }
 
  var stre = endTime.split (":");
  if (stre.length != 2) {
    return false;
  }
 
  var strn = nowTime.split (":");
  if (stre.length != 2) {
    return false;
  }
  var b = new Date ();
  var e = new Date ();
  var n = new Date ();
 
  b.setHours (strb[0]);
  b.setMinutes (strb[1]);
  e.setHours (stre[0]);
  e.setMinutes (stre[1]);
  n.setHours (strn[0]);
  n.setMinutes (strn[1]);
 
  if (n.getTime () - b.getTime () > 0 && n.getTime () - e.getTime () < 0) {
    return true;
  }
  else {
    return false;
  }
}
console.log(time_range ("21:30", "23:30", "3:22"));

上面的代码实现了我们的要求,下面介绍一下它的实现过程。

一.代码注释:

(1).var time_range = function (beginTime, endTime, nowTime) {},此函数实现了判断功能,第一个参数是开始时间,第二个参数是结束时间,第三个参数是要进行判断的时间。

(2).var strb = beginTime.split (":");

if (strb.length != 2) {

  return false;

},将开始的时间字符串进行分割形成一个数组。

如果数组的长度不等于2,那么就说明有错误,直接跳出。

(3).var stre = endTime.split (":");

if (stre.length != 2) {

  return false;

},和上面同样的道理。

(4).var strn = nowTime.split (":");

if (stre.length != 2) {

  return false;

},和上面同样的道理。

(5).var b = new Date (),创建时间对象。

(6).b.setHours (strb[0]),设置时间日期对象的小时字段。

(7).b.setMinutes (strb[1]),设置时间日期对象的分钟字段。

(8).if (n.getTime () - b.getTime () > 0 && n.getTime () - e.getTime () < 0) {

  return true;

}

else {

  return false;

},指定时间日期的时间戳大于开始时间日期的时间戳且小于结束时间日期的时间戳,那么就说明在其中,否则不在其中,那么就返回对应的值。

二.相关阅读:

(1).split()方法可以参阅javascript split()一章节。

(2).setHours()方法可以参阅javascript setHours()一章节。

(3).setMinutes()方法可以参阅javascript setMinutes()一章节。

(4).getTime()方法可以参阅javascript getTime()一章节。

回复

我来回复
  • 暂无回复内容