JavaScript 日付オブジェクトに変換しようとしている入力値を「わかりやすい」表示で日付/時刻ピッカーを使用しています。日付を選択すると、次の形式になります。
2013 年 10 月 21 日 09:00
次に、次の関数を使用して JavaScript オブジェクトに変換しようとします。
function pickerDateToJavascriptObj(dateIn)
{
dateIn = dateIn.split(/[- :]/);
dateIn[0] = getMonthNumber(dateIn[0]);
outDate = new Date(dateIn[2],dateIn[0],dateIn[1],dateIn[4],dateIn[5], "00");
console.log(outDate);
return outDate;
}
私は自分のページのピッカーに「開始日」と「終了日」の日付を記入する必要があります。フォームを送信し、outDates を console.log に送信すると、日付は正しくオブジェクトに変換されますが、タイム ゾーンが一貫して異なります。「開始日」については、コンソールに次のように表示されます。
Date {Mon Oct 21 2013 09:00:00 GMT+0100 (GMT Standard Time)}
「終了」日については、次のようになります。
Date {Thu Oct 31 2013 09:00:00 GMT+0000 (GMT Daylight Time)}
2 つの日付の標準時間と夏時間の違いに注目してください。
この不一致の原因は何ですか?
2 つの入力は次のとおりです。
<input type="text" placeholder="Start Date/Time" name="eventStart" id="eventStart" class="dateTimePicker" readonly="readonly">
<input type="text" placeholder="End Date/Time" name="eventEnd" id="eventEnd" class="dateTimePicker" readonly="readonly">