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 の使用に関する深い理解

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

推薦する

Linux で SSH 経由でリモート ファイルシステムをマウントする方法の詳細な説明

SSHFS の機能: FUSE(Linux向けの最高のユーザー空間ファイルシステムフレームワーク)を...

MySQL で戻り値ありと戻り値なしのストアド プロシージャを書く 2 つの方法

プロセス1: 戻り値あり: proc_addNum が存在する場合はプロシージャを削除します。 プロ...

IE8は優れたエクスペリエンスを提供します: アクティビティ

今日は IE8 ベータ 1 (以下、IE8 と略します) をチラ見しました。IE8 は素晴らしい体験...

ミニプログラムはリストのカウントダウン機能を実装します

この記事の例では、ミニプログラムでリストカウントダウンを実装するための具体的なコードを参考までに共有...

MySQL5.7 mysqldump バックアップとリカバリの実装

MySQL バックアップコールドバックアップ:停止服務進行備份,即停止數據庫的寫入ホットバックアップ...

この構成ファイルの排他ロックに失敗したという VMware 仮想マシンのプロンプトの解決方法

VMware が異常シャットダウンした後、再起動すると「この構成ファイルを排他的にロックできませんで...

WeChatミニプログラムビデオ集中砲火位置ランダム

この記事では、WeChatミニプログラムのビデオ弾幕の位置をランダム化するための具体的なコードを紹介...

非常に実用的なMySQL関数の包括的な概要、詳細な例の分析チュートリアル

目次1. MySQLの関数の説明2. 単行関数の分類3. キャラクター機能4. 数学関数5. 日付と...

Reactでaxiosを使用してリクエストを送信する一般的な方法

目次Reactにaxios依存関係をインストールして導入するGETリクエストにaxiosを使用するa...

MySQL 8.0.12 簡単インストールチュートリアル

この記事では、MySQL 8.0.12のインストールチュートリアルを参考までに紹介します。具体的な内...

CSS で要素を垂直方向に中央揃えする 7 つの方法

【1】中央の要素の幅と高さを知る絶対値 + 負のマージンコードの実装 .wrapBox5{ 幅: 3...

CSS における z-index: 0 と z-index: auto の違い

最近、スタック コンテキストについて学習しています。学習の過程で、z-index が 0 の場合と ...

Dockerのセキュリティについて Docker-TLS暗号化通信の問題

目次1. Dockerのセキュリティ問題2. Dockerアーキテクチャの欠陥とセキュリティメカニズ...

CSS で波の効果を作成するためのアイデア

以前、純粋な CSS を使用して波の効果を実現する方法をいくつか紹介しました。それらについては、次の...

Vueの計算プロパティの詳細な説明

1. 計算属性とは何ですか? 簡単に言えば、計算された結果が属性に保存されるもので、キャッシュとして...