Maison >interface Web >js tutoriel >JavaScript compare les heures du même jour

JavaScript compare les heures du même jour

小云云
小云云original
2018-02-11 09:41:471757parcourir

Dans le processus de développement d'un projet, vous rencontrerez parfois des comparaisons de temps au cours de la même journée. De manière générale, la sélection du temps se fait via des plug-ins, mais cela n'exclut pas la situation où les clients exigent une saisie manuelle. Alors, comment mettre en œuvre cela lors de la saisie manuelle du temps à la demande du client et devant comparer les durées ? Ce qui suit est une brève introduction aux étapes que j'ai mises en œuvre :

1. Tout d'abord, obtenez le contenu saisi par l'utilisateur

2. Vérifiez si le format de l'heure est correct ; 🎜>3. Comparez les deux La taille du temps (trois méthodes de comparaison du temps sont organisées, veuillez consulter le code suivant pour plus de détails) ;

4.

Ce qui suit est un exemple de code à titre de référence uniquement :

1. Obtenez les deux fois saisies par l'utilisateur et remplacez tous les deux-points saisis par l'utilisateur par des deux-points demi-largeur pour faciliter les opérations ultérieures. opérations ;

2. Vérifiez si le format de l'heure est correct :
var bagin = $('.input_three').val().replace(/:/g,':');//将全角冒号替换为半角冒号,替换的目的是为了通过半角冒号分割字符
      var end = $('.input_four').val().replace(/:/g,':');
//     替换字符串中的某个字符:.replace(':',':'):只替换字符串中的第一个全角冒号;.replace(/:/g,':'):替换字符串中的所有的全角冒号
//将时间以冒号分割:以下比较时间大小的方法中会用到
var bagin_ = bagin.split(':');
var end_ = end.split(':');

3. Comparez la taille de l'heure :
//      正则验证时间格式,正确的时间范围(通过返回时间戳格式,否则返回null)
//     [0-9]在范围内取其一;?是取之前字符的0个或者1个;也可以解释为非贪婪模式;|或者
      var bagin_r = bagin.match(/^([0-1]?[0-9]|2[0-3])(:|:)([0-5][0-9])(:|:)([0-5][0-9])$/);
      var end_r = end.match(/^([0-1]?[0-9]|2[0-3])(:|:)([0-5][0-9])(:|:)([0-5][0-9])$/);
if(bagin_r==null){
  alert("请输入正确的营业时间,00:00:00-23:59:59");
  return false;
}

if(end_r==null){
  alert("请输入正确的截止时间,00:00:00-23:59:59");
  return false;
}

Méthode 1 : Comparez la taille de l'heure. par horodatage (doit être converti au format d'horodatage peut être utilisé pour la comparaison de taille)

Méthode 2 : Obtenez les heures, les minutes et les secondes de l'heure d'entrée pour juger
if(bagin_r[1]>end_r[1]||bagin_r[1]==end_r[1]&&bagin_r[3]>end_r[3]||bagin_r[1]==end_r[1]&&bagin_r[3]==end_r[3]&&bagin_r[5]>=end_r[5]){
//         alert("开始时间不能大于等于结束时间");
//         return false;
//       }

Méthode 3 : Comparez la durée en calculant le nombre total de secondes
if(bagin_[0]>end_[0]||bagin_[0]==end_[0]&&bagin_[1]>end_[1]||bagin_[0]==end_[0]&&bagin_[1]==end_[1]&&bagin_[2]>=end_[2]){
//       alert("开始时间不能大于等于结束时间");
//         return false;
//     }

Recommandations associées :
var bagin_time = bagin_[0]*3600 + bagin_[1]*60 + bagin_[2];
      var end_time = end_[0]*3600 + end_[1]*60 + end_[2];
      if(bagin_time >= end_time){
        alert("开始时间不能大于等于结束时间");
          return false;
      }
//       
        else{
         alert("提交成功");
        }

Exemple d'utilisation détaillé de la conversion de l'horodatage javascript au format de date

Résumé des méthodes de traitement du temps javascript (recommandé)

Tutoriel sur les objets temporels javascript

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn