2

私は JavaScript にかなり慣れていませんが、問題があります。type の 2 つの入力要素を持つ HTMl5-Page がありtimeます。2 つの時間の差を取得したいので、11:15 と 12:00 は 0:45 になります。

HTMLはかなり簡単だと思います:

<ul>
    <li>
        <label>Anfang: </label>
    </li>
    <li>
        <input type="time" id="begin" required="true">
    </li>
</ul>

<ul>
    <li>
        <label>Ende: </label>
    </li>
    <li>
        <input type="time" id="end" required="true"></li>
</ul>

ここでは特別なことは何もないと思います。私の JavaScript では、これら 2 つのフィールドの値を取得するボタンにリスナーをアタッチし、それを次の関数に渡して、時刻から日付オブジェクトを作成します。

function timeToDate(input) {
    var hours = input.substring(0, 2);
    var min = input.substring(3, 5);

    var date = new Date();
    date.setHours(hours);
    date.setMinutes(min);
    return date;

}

違いを得るために、私は次のようにします:

var beginDate = timeToDate(begin);
var endDate = timeToDate(end);
var diff = endDate.getTime() - beginDate.getTime();
var b = new Date();
b.setTime(diff);
console.log(b.getHours());

しかし、11:00 (beginDate) と 12:00 (endDate) のコンソール出力は2ですが、1 である必要があります。それとも、ここで手掛かりが得られないのでしょうか?

4

3 に答える 3