【2024年最新】JavaScriptで日付から日数を減らす!初心者でも分かる3つの方法

2024-04-12

JavaScriptで日付から日数を減らす方法

setDate() メソッドは、Dateオブジェクトの日付を指定した値に設定します。日数を減らすためには、現在の日にちから減らしたい日数を引きます。

const date = new Date(); // 現在のDateオブジェクトを取得
const daysToSubtract = 5; // 減らしたい日数

// 日付を5日減らす
date.setDate(date.getDate() - daysToSubtract);

console.log(date); // 5日前の日付が表示されます
const date = new Date(); // 現在のDateオブジェクトを取得
const daysToSubtract = 5; // 減らしたい日数

// 日付を5日減らす
date.setMilliseconds(date.getMilliseconds() - daysToSubtract * 24 * 60 * 60 * 1000);

console.log(date); // 5日前の日付が表示されます

Date.prototype.subtractDays() メソッドを使う

いくつかのライブラリでは、Date.prototype.subtractDays() メソッドのような拡張メソッドを提供しています。このメソッドを使うと、より簡単に日数を減らすことができます。

const date = new Date(); // 現在のDateオブジェクトを取得
const daysToSubtract = 5; // 減らしたい日数

// 日付を5日減らす
date.subtractDays(daysToSubtract);

console.log(date); // 5日前の日付が表示されます
  • シンプルな方法で日数を減らしたい場合は、setDate() メソッドを使うのがおすすめです。
  • ミリ秒単位で正確な計算が必要な場合は、setMilliseconds() メソッドを使うのがおすすめです。



setDate() メソッドを使う

const date = new Date(); // 現在のDateオブジェクトを取得
const daysToSubtract = 5; // 減らしたい日数

// 日付を5日減らす
date.setDate(date.getDate() - daysToSubtract);

console.log(date); // 5日前の日付が表示されます

setMilliseconds() メソッドを使う

const date = new Date(); // 現在のDateオブジェクトを取得
const daysToSubtract = 5; // 減らしたい日数

// 日付を5日減らす
date.setMilliseconds(date.getMilliseconds() - daysToSubtract * 24 * 60 * 60 * 1000);

console.log(date); // 5日前の日付が表示されます
const date = new Date(); // 現在のDateオブジェクトを取得
const daysToSubtract = 5; // 減らしたい日数

// 日付を5日減らす
date.subtractDays(daysToSubtract);

console.log(date); // 5日前の日付が表示されます

出力例

// 1. setDate() メソッドを使う
> 2024-04-06T00:00:00.000Z

// 2. setMilliseconds() メソッドを使う
> 2024-04-06T00:00:00.000Z

// 3. Date.prototype.subtractDays() メソッドを使う
> 2024-04-06T00:00:00.000Z

補足

  • 上記のサンプルコードは、いずれもブラウザのコンソールで実行することができます。
  • Date.prototype.subtractDays() メソッドは、ライブラリによって実装が異なる場合があります。詳細は、ライブラリのドキュメントを参照してください。



JavaScriptで日付から日数を減らすその他の方法

Date.parse() メソッドと Date.prototype.toString() メソッドを使う

Date.parse() メソッドは、日付文字列をミリ秒に変換します。Date.prototype.toString() メソッドは、Dateオブジェクトを日付文字列に変換します。これらのメソッドを組み合わせて、日数を減らすことができます。

const dateStr = "2024-04-11"; // 日付文字列
const daysToSubtract = 5; // 減らしたい日数

// 日付を5日減らす
const newDateStr = new Date(Date.parse(dateStr) - daysToSubtract * 24 * 60 * 60 * 1000).toString();

console.log(newDateStr); // 2024-04-06

Moment.js ライブラリを使う

Moment.js は、日付時刻を扱うためのJavaScriptライブラリです。Moment.js を使用すると、より簡単に日数を減らすことができます。

// Moment.js ライブラリの読み込み
import moment from "moment";

const date = moment(); // 現在のDateオブジェクトを取得
const daysToSubtract = 5; // 減らしたい日数

// 日付を5日減らす
const newDate = date.subtract(daysToSubtract, "days");

console.log(newDate.toString()); // 2024-04-06

Lodash ライブラリを使う

Lodash は、JavaScript のユーティリティライブラリです。Lodash を使用すると、_.subtract() 関数を使って日数を減らすことができます。

// Lodash ライブラリの読み込み
import _ from "lodash";

const date = new Date(); // 現在のDateオブジェクトを取得
const daysToSubtract = 5; // 減らしたい日数

// 日付を5日減らす
const newDate = _.subtract(date, daysToSubtract, "days");

console.log(newDate); // 2024-04-06
  • より柔軟な方法で日数を減らしたい場合は、Moment.js などのライブラリを使うのがおすすめです。

javascript date


Colors.jsを使ってJavaScriptで簡単にRGB値を16進数カラー値に変換

このチュートリアルでは、JavaScript、jQuery、Colors. js ライブラリを使用して、RGB値から16進数カラー値を取得する方法を説明します。必要なもの基本的な JavaScript の知識jQuery ライブラリColors...


JavaScript、Node.js、Socket.IO でチャットアプリケーションを作成する

Node. js がインストールされているコンピュータテキストエディタプロジェクトの作成 npm init -yプロジェクトの作成Socket. IO をインストールします。 npm install socket. ioSocket. IO をインストールします。...


【迷ったらコレ】JavaScriptオブジェクトのキーを可変で設定するベストプラクティス

従来のドット表記と角括弧表記ドット表記:キーが文字列リテラルの場合のみ使用可能。角括弧表記:変数をキーとして使用可能。ES6のcomputed property namesより簡潔なコードでキーを動的に設定可能。テンプレートリテラル文字列リテラルの中に式を埋め込むことで、動的なキーを生成可能。...


ReactでJSXを複数行で返す:Fragment、配列、条件分岐、カスタムコンポーネント徹底解説

Fragmentは、JSX要素をグループ化するためのReactコンポーネントです。Fragmentを使用すると、複数のJSX要素を一つのreturn文で返すことができます。メリット:シンプルで分かりやすい構文他の方法と比べてコードが読みやすい...


React Nativeで別のVirtualizedListコンテナを使用する方法

この問題を解決するには、以下のいずれかの方法で別のVirtualizedListコンテナを使用できます。ネストされたリストの向きを変える例:垂直方向のScrollView内に水平方向のFlatListを使用する。SectionListまたはFlatGridのような別のコンポーネントを使用する...