js を使用して過去 1 週間、1 か月、3 か月の時間を取得する簡単な例

js を使用して過去 1 週間、1 か月、3 か月の時間を取得する簡単な例

過去1週間の時間を取得する

var end = new Date();
var year = end.getFullYear();
var month = end.getMonth() + 1; //0-11 は 1 月から 12 月を意味します var day = end.getDate();
var dateObj = {};
dateObj.end = 年 + '-' + 月 + '-' + 日;
if (day - 7 <= 0) { // 月の 7 日より前の場合 var startMonthDay = new Date(year, (parseInt(month) - 1), 0).getDate(); // 1 週間前の月の合計日数 if (month - 1 <= 0) { // 現在の年の 1 月の場合 dateObj.start = (year - 1) + '-' + 12 + '-' + (31 - (7 - day));
    } それ以外 {
      dateObj.start = 年 + '-' + (月 - 1) + '-' + (開始月日 - (7 - 日));
    }
} それ以外 {
    dateObj.start = 年 + '-' + 月 + '-' + (日 - 7);
}
コンソールログ(JSON.stringify(dateObj))
1.2.3.4.5.6.7.8.9.10.11.12.13.14.15.16.17.

過去1か月の時間を取得する

var end = new Date();
var year = end.getFullYear();
var month = end.getMonth() + 1; //0-11 は 1 月から 12 月を意味します var day = end.getDate();
var dateObj = {};
dateObj.end = 年 + '-' + 月 + '-' + 日;
var endMonthDay = new Date(year, month, 0).getDate(); //現在の月の合計日数 if(month - 1 <= 0){ //1月の場合は1年進む<br> 
       dateObj.start = (年 - 1) + '-' + 12 + '-' + 日;
}それ以外{
    var startMonthDay = new Date(year, (parseInt(month) - 1), 0).getDate();
    if(startMonthDay < day){ //1 か月前の月の合計日数が現在の日付より少ない if(day < endMonthDay){ //現在の日付が現在の月の合計日数より少ない dateObj.start = year + '-' + (month - 1) + '-' + (startMonthDay - (endMonthDay - day));
        }それ以外{
            dateObj.start = 年 + '-' + (月 - 1) + '-' + 開始月日;
        }
    }それ以外{
        dateObj.start = 年 + '-' + (月 - 1) + '-' + 日;
    }
}
コンソールログ(JSON.stringify(dateObj))
1.2.3.4.5.6.7.8.9.10.11.12.13.14.15.16.17.18.19.20.21.22.

過去3か月分を取得

var end = new Date();
var year = end.getFullYear();
var month = end.getMonth() + 1; //0-11 は 1 月から 12 月を意味します var day = end.getDate();
var dateObj = {};
dateObj.end = 年 + '-' + 月 + '-' + 日;
var endMonthDay = new Date(year, month, 0).getDate(); //現在の月の合計日数if(month - 3 <= 0){ //1月、2月、または3月の場合は、1年進みます var start3MonthDay = new Date((year - 1), (12 - (3 - parseInt(month))), 0).getDate(); //3か月前の月の合計日数 if(start3MonthDay < day){ //3か月前の月の合計日数は、現在の日付より小さいです dateObj.start = (year - 1) + '-' + (12 - (3 - month)) + '-' + start3MonthDay;
    }それ以外{
        dateObj.start = (年 - 1) + '-' + (12 - (3 - 月)) + '-' + 日;
    }
}それ以外{
    var start3MonthDay = new Date(year, (parseInt(month) - 3), 0).getDate(); // 3 か月前の月の合計日数 if(start3MonthDay < day){ // 3 か月前の月の合計日数は現在の日付より小さい if(day < endMonthDay){ // 現在の日付は現在の月の合計日数より小さい (2 月は特別な月です) dateObj.start = year + '-' + (month - 3) + '-' + (start3MonthDay - (endMonthDay - day));
        }それ以外{
            dateObj.start = 年 + '-' + (月 - 3) + '-' + start3MonthDay;
        }
    }それ以外{
        dateObj.start = 年 + '-' + (月 - 3) + '-' + 日;
    }
}
コンソールログ(JSON.stringify(dateObj))

新しい Date() と setDate() パラメータ

インターネット上には日付に関する記事がすでにたくさんあると思います。ここでは、私が仕事で遭遇した問題を要約します。

新しい日付()

new Date() には 6 つの形式があり、5 つはパラメーター付き、1 つはパラメーターなしです。

  1. new Date(); 言うまでもなく、取得されるデフォルトの日付は現在の日付です。
  2. new Date("month1 dd,yyyy hh:mm:ss"); 注意: パラメータは文字形式です
  3. new Date("month1 dd,yyyy"); 注意: パラメータは文字形式です
  4. new Date(yyyy,month2,dd,hh,mm,ss); 注意: パラメータは文字ではありません
  5. new Date(yyyy,month2,dd); 注意: パラメータは文字ではありません
  6. 新しい日付(ミリ秒);

パラメータの説明:

month1: 英語では、1月から12月までの月の名前を示します。

dd: 日付を示す、1~31

yyyy: 4桁で表される年を示します

hh:mm:ss: は時間 (0-23) - 分 (0-59) - 秒 (0-59) を示します。

month2: は数値型の月です。0から11まで、つまり1月から12月までです。

ms: 1970年1月1日からのミリ秒数

特別な注意:一部はキャラクター形式ですが、一部はそうではありません

要約する

js を使用して過去 1 週間、1 か月、3 か月の時間を取得する方法についての記事はこれで終わりです。js を使用して過去 1 週間、1 か月、3 か月の時間を取得する方法についての関連コンテンツをさらにご覧になりたい場合は、123WORDPRESS.COM で以前の記事を検索するか、以下の関連記事を引き続きご覧ください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。

以下もご興味があるかもしれません:
  • js を使用して時間を取得します (今週、今四半期、今月など)
  • jsは現在の時刻と今月の週数を取得するメソッドを実装します
  • jsは今日、今週、今月のタイムコードを取得します
  • JS は今週の月曜日、週末を取得し、いつでも月曜日の週末を取得する関数の例
  • js を使用して時間差を取得し、土曜日と日曜日の実装コードを削除します

<<:  ::before/:before と ::after/:after の使用に関する深い理解

>>:  ウォーターフォールレイアウト+ダイナミックレンダリングの実装

推薦する

Docker を使用した Redis マスタースレーブレプリケーションの実践の詳細説明

目次1. 背景2. 操作手順3. Dockerをインストールする4. 主なサービス構成5. サービス...

CentOS7でXShellとネットワーク設定を接続する方法

1. Linuxネットワーク構成ネットワークを構成する前に、まずローカル IPv4 アドレスやデフォ...

コンパイル/サーバーなしでブラウザにCommonJSモジュールを実装する

目次導入1. one-click.jsとは2. パッケージングツールはどのように機能しますか? 3....

無視されたDOCTYPE記述の分析

doctype もその 1 つです。 <!DOCTYPE HTML PUBLIC "...

JavaScript ベースで年・月・日の 3 階層連携を実現

この記事では、年、月、日の3段階のリンクを実現するためのJavaScriptの具体的なコードを参考ま...

XHTML ドキュメントで JavaScript と CSS を正しく使用する方法

ますます多くのウェブサイトで、XHTML が HTML4 に取って代わって急速に普及しています。しか...

Vue プロジェクトで垂直テーブルを 2 つの方法で実装するアイデアの分析

問題の説明私たちのプロジェクトでは、水平方向のテーブルが一般的ですが、必要に応じて垂直方向のテーブル...

MySQL シリーズ データベース設計 3 つのパラダイム チュートリアルの例

目次1. データベース設計の3つのパラダイムに関する知識の説明1. デザインパラダイムとは何ですか?...

Dockerとiptablesとブリッジモードのネットワーク分離と通信操作の実装

Docker は、ブリッジ、ホスト、オーバーレイなどの複数のネットワークを提供します。同じ Dock...

本番環境でのMySQLパラメータsql_safe_updatesの使用に関する詳細な説明

序文アプリケーションのバグや DBA の誤操作が発生した場合、テーブル全体が更新される可能性がありま...

JavaScriptのループの違いについての詳細な説明

目次序文列挙可能なプロパティ反復可能なオブジェクトforEachメソッドとmapメソッドチェーン呼び...

Vueルーティングコンポーネントでパラメータを渡す8つの方法の詳細な説明

シングルページアプリケーションを開発する場合、特定のルートを入力し、パラメータに基づいてサーバーから...

JavaScript での正規表現の使用について詳しく学ぶ

目次1. 正規表現とは何か1. 正規表現の特徴2. 正規表現の使用2. 正規表現における特殊文字1....

Vueのウェブページスクリーンショット機能の詳しい説明

最近、プロジェクトで写真をアップロードする要件があるのですが、顧客がアップロードする写真のサイズがま...

Vue 開発プロジェクトで Font Awesome 5 を使用する方法

目次依存関係をインストールする構成使用1.アイコン検索ページに入る2. 使用したいアイコンの英語名を...