4

こんにちは、今日の最新時刻 (23:59:59) を表す UNIX タイムスタンプを次のように作成しようとしています。

current_date = new Date();
end = new Date(current_date.getFullYear(), current_date.getMonth(), current_date.getDate(),23,59,59);
end = end.getTime() / 1000;

UNIX タイムスタンプを警告し、それを日時に戻すと、1 時間遅れており、23:59:59 ではなく 22:59:59 を表します。

午後 11 時が必要な場合は、23 ではなく、時間パラメーターの日付関数に 24 を渡す必要があります。これでよろしいですか?

私はイギリスにいるので、時間は GMT である必要があります

4

1 に答える 1

5

new Date()タイムゾーンはUTCであるのに対し、はタイムゾーンで日付を作成します。あなたはBST(GMT + 1)にいるように見えるので、1つずつずれたエラーが発生します。

代わりに、日付を作成してから、を使用setUTCHours(23)setUTCMinutes(59)setUTCSeconds(59)正しいタイムスタンプを取得してください。

于 2012-10-02T16:34:09.123 に答える