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

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

推薦する

Centos に PHP7.4 と Nginx をインストールする方法

準備する1. 必要なインストールパッケージをダウンロードするhttps://www.php.net/...

Ubuntu 16.04 サーバーで MySQL を設定し、リモート接続を有効にする方法

背景最近、Node.js を勉強しているのですが、クラウド サーバーがあることを思い出しました。しか...

Linux ネットワークプログラミング機能の簡単な分析

目次1.ソケットを作成する2. ソケットをバインドする3. 聞き手を作る。聞く4. 接続が受け入れら...

Vue データの応答性の概要

データの応答性について話す前に、Vue はデータに対して具体的に何を行うのかという非常に重要な問題を...

HTML フォーム コントロールの無効な属性の読み取り専用と無効の概要

HTML でフォームの送信を無効にする方法は 2 つあります。 1. コントロールタグにreadon...

Zabbix を使用して Nginx/Tomcat/MySQL を監視する方法の詳細なチュートリアル

目次ZabbixはNginxを監視するZabbixはTomcatを監視するZabbixはMySQLを...

CSS は、小さな鋭角のチャット ダイアログ ボックスで鋭角の吹き出し効果を実現します。

1. CSS を使用して、小さな尖った角のチャット ダイアログ ボックスと尖った角の吹き出しを描画...

データベース管理における 19 の MySQL 最適化方法

MySQL データベースを最適化すると、データベースの冗長性を削減できるだけでなく、データベースの実...

MySQLテーブルパーティショニングプログラムを変更する方法

MySQLテーブルパーティショニングプログラムを変更する方法1. サブテーブルの実装の原則は次のとお...

JavaScript関数におけるこのポイントの問題の詳細な説明

このキーワードどのオブジェクトが関数を呼び出しますか? また、関数内の this はどのオブジェクト...

JavaScript における Promise の詳細な説明

目次Promise の基本的な使用法: 1. Promiseオブジェクトを作成する2. プロミス方式...

MySQL 作成ルーチン権限に関する注意事項

1. ユーザーにルーチン作成権限がある場合は、プロシージャ | 関数を作成できます。 2. ユーザー...

CSS3アニメーションを使用した簡単な指クリックアニメーションの実装例

この記事では主に、CSS3 アニメーションで簡単な指クリックアニメーションを実装する例を紹介し、皆さ...

Linux で fdisk を使用してディスクをパーティション分割する方法

Linux パーティションでよく使用されるコマンド: fdisk、MBR パーティション テーブルの...

Chrome タブバーを実装するための CSS のヒント

今回は、Google Chrome のタブバーのような、特殊な丸い角を持つナビゲーション バーのレイ...