JavaScript で日付を増やす 質問する

JavaScript で日付を増やす 質問する

JavaScript で日付の値を 1 日増やす必要があります。

たとえば、日付値が 2010-09-11 であり、翌日の日付を JavaScript 変数に格納する必要があるとします。

日付を 1 日増やすにはどうすればよいですか?

ベストアンサー1

3 つのオプション:

1. JavaScript のDateオブジェクトのみを使用する (ライブラリなし):

以前の回答 1 は間違っていました (夏時間への移行を考慮しておらず、24 時間追加されていました)。賢い人間2010年11月7日(東部標準時)では失敗するだろうと指摘した。代わりに、ジガーの答えライブラリなしでこれを行う正しい方法は次のとおりです。

// To do it in local time
var tomorrow = new Date();
tomorrow.setDate(tomorrow.getDate() + 1);

// To do it in UTC
var tomorrow = new Date();
tomorrow.setUTCDate(tomorrow.getUTCDate() + 1);

これは、JavaScript の日付オブジェクトがロールオーバーを賢く処理するため、月 (または年) の最終日でも機能します。

// (local time)
var lastDayOf2015 = new Date(2015, 11, 31);
console.log("Last day of 2015: " + lastDayOf2015.toISOString());
var nextDay = new Date(+lastDayOf2015);
var dateValue = nextDay.getDate() + 1;
console.log("Setting the 'date' part to " + dateValue);
nextDay.setDate(dateValue);
console.log("Resulting date: " + nextDay.toISOString());

2. 使用モーメントJS:

var today = moment();
var tomorrow = moment(today).add(1, 'days');

( は、add新しいインスタンスを返すのではなく、呼び出したインスタンスを変更するので、 がtoday.add(1, 'days')変更されることに注意してくださいtoday。これが、 のクローン作成操作から開始する理由ですvar tomorrow = ...。)

3. 使用日付JSしかし、長い間更新されていません。

var today = new Date(); // Or Date.today()
var tomorrow = today.add(1).day();

おすすめ記事