開始時刻と終了時刻を知っていれば、どのようにX分ごとに時間を分割できますか?私の開始時刻が13:00
で、私の終了時間があるのであれば、たとえば、:15:00
とそれを30分ごとに分割し、その後、私は配列含むを取得したいと思います:チャンクのJavaScript分割時間
13:00 - 13:30
14:00 - 14:30
14:30 - 15:00
開始時刻と終了時刻を知っていれば、どのようにX分ごとに時間を分割できますか?私の開始時刻が13:00
で、私の終了時間があるのであれば、たとえば、:15:00
とそれを30分ごとに分割し、その後、私は配列含むを取得したいと思います:チャンクのJavaScript分割時間
13:00 - 13:30
14:00 - 14:30
14:30 - 15:00
あなたはにdatejsとそのaddメソッドを使用することができますDateオブジェクトに分を追加します。 compareToメソッドを使用して、適切な範囲内にいることを確認できます。
外部ライブラリを使用しない場合は、w3schoolsを参照してください。
//Set minutes
var myDate=new Date();
myDate.setMinutes(myDate.getMinutes()+30);
//Compare two dates.
var x=new Date();
x.setFullYear(2100,0,14);
var today = new Date();
if (x>today)
{
alert("Today is before 14th January 2100");
}
else
{
alert("Today is after 14th January 2100");
}
@Mike datejsはMITなので、コードを見て、自分のやることをすることができます。 – Gord
すべてを難破船うまく:どのような変数
function getIntervals(startString,endString,intervalString) {
var start = startString.split(":");
var end = endString.split(":");
var interval = intervalString.split(":");
startInMinutes = start[0]*60+start[1]*1;
endInMinutes = end[0]*60+end[1]*1;
intervalInMinutes = interval[0]*60+interval[1]*1;
var times = [];
var intervalsOfTime = [];
for(var i = startInMinutes; i <= endInMinutes; i+=intervalInMinutes) {
var hour = Math.floor(i/60) + "";
var minute = i%60 + "";
minute = (minute.length < 2) ? "0" + minute : minute;
hour = (hour.length < 2) ? "0" + hour : hour;
times.push(hour + ":" + minute);
}
for(var i = 0; i < times.length-1; i++)
intervalsOfTime.push(times[i] + " - " + times[i+1])
return intervalsOfTime;
}
13:00 - 13:30
13:30 - 14:00
14:00 - 14:30
14:30 - 15:00
var makeTimeIntervals = function (startTime, endTime, increment) {
startTime = startTime.toString().split(':');
endTime = endTime.toString().split(':');
increment = parseInt(increment, 10);
var pad = function (n) { return (n < 10) ? '0' + n.toString() : n; },
startHr = parseInt(startTime[0], 10),
startMin = parseInt(startTime[1], 10),
endHr = parseInt(endTime[0], 10),
endMin = parseInt(endTime[1], 10),
currentHr = startHr,
currentMin = startMin,
previous = currentHr + ':' + pad(currentMin),
current = '',
r = [];
do {
currentMin += increment;
if ((currentMin % 60) === 0 || currentMin > 60) {
currentMin = (currentMin === 60) ? 0 : currentMin - 60;
currentHr += 1;
}
current = currentHr + ':' + pad(currentMin);
r.push(previous + ' - ' + current);
previous = current;
} while (currentHr !== endHr);
return r;
};
var a = makeTimeIntervals('13:00', '15:00', 30);
for (var i in a) if (a.hasOwnProperty(i)) { document.body.innerHTML += a[i] + '<br />'; }
リンクをクリックするのを忘れないでください... – shawndumas
:文字列のためにこれをしたい人のための、このP ...まあいい...タイプはあなたの時間が保存されていますか?文字列? – Spycho
Spycho:Date Object –
出力配列にはどのようなものが含まれますか?それらの文字列、文字通り?または 'Date'オブジェクトのペア?他に何か? –