2016-11-02 6 views
-2

ある時間間隔を含む1つの配列があり、現在の時間(HH:mm)の配列が配列内にあるかどうかをチェックしたいと思います。時間形式は(9:30,10:30 || 9:00,10:00) .ARRAYがアレイに特定の時間が含まれているかどうかを確認

enter image description here

arrayvals = [ "午前0時"、 "4時00分"、 "9時"、 "11時00分" の下に記載30 min or 60 minutes間隔であってもよいです、 "12:00"、 "14:00"、 "17:00"];

は、私は時間"09:17"または現在時刻が、インデックス2の配列内にあるかどうかを確認したい「09:00」9-10間隔を意味します。

+0

あなたは** **あなたの努力をサンプル配列を共有し、することはできますか?また、私が正しく理解している場合は、現在の時間が所定の時間内に収まっているかどうかを確認したい。右? 「09:00」と「09:30」の間に「09:17」のようなものがあります – Rajesh

+0

質問についての私の理解は正しいですか? – Rajesh

+0

はいrajesh u r right –

答えて

3

間隔の指定された値のすべての分をチェックできます。

function check(array, value) { 
 
    function getMinutes(s) { 
 
     var p = s.split(':'); 
 
     return p[0] * 60 + +p[1]; 
 
    } 
 

 
    var v = getMinutes(value); 
 
    return array.some(function (a) { 
 
     var t = getMinutes(a); 
 
     return t <= v && v <= t + 60 || t <= v + 24 * 60 && v + 24 * 60 <= t + 60; 
 
    }); 
 
} 
 

 
var values = ["04:00", "09:00", "11:00", "12:00", "14:00", "17:00", "23:30"]; 
 

 
console.log(check(values, '09:17')); 
 
console.log(check(values, '10:00')); 
 
console.log(check(values, '13:00')); 
 
console.log(check(values, '07:00')); 
 
console.log(check(values, '00:15'));

+1

ありがとう、あなたのサポートのためのニーナ –

関連する問題