プロジェクト開発では、同じ日の時間サイズを比較するための JavaScript のサンプル コードを以下に示します。必要な場合は、それを参照してください。一般的に、時間の選択はプラグインを介して実装されますが、顧客が手動入力を必要とする状況が排除されるわけではありません。
では、顧客の要求に応じて時間を手動で入力し、時間の大きさを比較する必要がある場合、これをどのように実装すればよいでしょうか?以下に、私が実装したメソッドの手順を簡単に紹介します。
1. まず、ユーザーが入力した内容を取得します
2. 2 つの時刻の形式を比較します。時間 (時間を比較する 3 つの方法をまとめています。詳細については、次のコードを参照してください)
4. 結果を返します。
以下は参考用のサンプルコードです:
1. ユーザーが入力した 2 回の入力を取得し、その後の操作を容易にするために、ユーザーが入力したすべてのコロンを半角コロンに置き換えます。時間形式が正しいかどうか:
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. 時間サイズを比較します:
方法 1: タイムスタンプを通じて時間サイズを比較します (サイズ比較を実行するには、タイムスタンプ形式に変換する必要があります)
// 正则验证时间格式,正确的时间范围(通过返回时间戳格式,否则返回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; }
方法 2: 時、分、および時間を取得します。入力時間の秒数を分けて判定
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; // }
方法3:合計秒数を計算して時間を比較する
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; // }
以上、皆さんの参考になれば幸いです。
関連記事:
v-forを使用してVueでsrc属性に値を代入する方法を実装する(詳細チュートリアル) vueでv-forを使用してローカル静的画像をロードする方法を実装する(詳細チュートリアル)チュートリアル) で vue で v-for を使用するときに赤色と警告が表示される問題を解決する方法 (詳細なチュートリアル)以上がJavaScriptで同日の時刻を比較の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。