JavaScript 日付ツールの概要

JavaScript 日付ツールの概要
ユーティリティ = {
  /**
   * 死亡年ですか? * @return {Boolse} true|false
   */
  うるう年かどうか: 関数(y) {
    戻り値 (y % 4 == 0 && y % 100 != 0) || y % 400 == 0;
  },
  /**
   * 週番号を返します * @return {Number}
   */
  getWhatDay: 関数(年、月、日) {
    date = new Date(年 + '/' + 月 + '/' + 日)とします。
    index = date.getDay(); とします。
    dayNames = ['日曜日', '月曜日', '火曜日', '水曜日', '木曜日', '金曜日', '土曜日'] とします。
    dayNames[インデックス]を返します。
  },
  /**
   * 週番号を返します * @return {Number}
   */
  getMonthPreDay: 関数(年、月) {
    date = new Date(年 + '/' + 月 + '/01');
    day = date.getDay() とします。
    (日 == 0)の場合{
      日 = 7;
    }
    帰国日;
  },
  /**
   * 月の日付を返します * @return {Number}
   */
  getMonthDays: 関数(年、月) {
    if (/^0/.test(月)) {
      月 = month.split('')[1];
    }
    [0, 31, this.isLeapYear(year) ? 29 : 28, 31, 30, 31, 30, 31, 30, 31, 30, 31, 30, 31][month] を返します。
  },
  /**
   * 数字を入力してください * @return {string}
   */
  getNumTwoBit: 関数(n) {
    n = 数値(n);
    (n > 9 ? '' : '0') + n を返します。
  },
  /**
   * 日付オブジェクトを文字列に変換します * @return {string}
   */
  date2Str: 関数(日付、分割) {
    if (typeof date == 'string') は date を返します。
    分割 = 分割 || '-';
    y = date.getFullYear() とします。
    m = this.getNumTwoBit(date.getMonth() + 1); とします。
    d = this.getNumTwoBit(date.getDate()); とします。
    [y, m, d].join(split) を返します。
  },
  /**
   * 日付フォーマット文字列を返します * @param {Number} 0 は今日の日付、1 は明日の日付、2 は翌日の日付などを返します * @return {string} '2014-12-31'
   */
  getDay: 関数(i) {
    i = i || 0;
    date = new Date();
    diff = i * (1000 * 60 * 60 * 24)とします。
    date = 新しい Date(date.getTime() + diff);
    this.date2Str(date) を返します。
  },
  /**
   * タイムスタンプを日付形式に変換 * @return {String}
   */
  timestampToDate: 関数(タイムスタンプ) {
    date = new Date(timestamp); とします。
    date.getFullYear() + '-' + getNumTwoBit(date.getMonth() + 1) + '-' + getNumTwoBit(date.getDate()); を返します。
  },
  /**
   * 時間比較 * @return {Boolean}
   */
  比較日付: 関数(日付1、日付2) {
    startTime = new Date(date1.replace('-', '/').replace('-', '/')); とします。
    endTime = new Date(date2.replace('-', '/').replace('-', '/')); とします。
    開始時刻 >= 終了時刻の場合
      false を返します。
    }
    true を返します。
  },
  /**
   * 時間比較 * @return {Boolean}
   */
  compareDateArr: 関数(日付1、日付2) {
    startTime を新しい Date() とします。
    startTime.setFullYear(parseInt(date1[0]), parseInt(date1[1]) - 1, parseInt(date1[2]));
    startTime.setHours(parseInt(date1[3]), parseInt(date1[4]));
    endTime を新しい Date() とします。
    endTime.setFullYear(parseInt(date2[0]), parseInt(date2[1]) - 1, parseInt(date2[2]));
    endTime.setHours(parseInt(date2[3]), parseInt(date2[4]));
    開始時刻 >= 終了時刻の場合
      false を返します。
    }
    true を返します。
  },
  /**
   * 時間は等しいですか? * @return {Boolean}
   */
  isEqual: 関数(date1, date2) {
    startTime を new Date(date1).getTime() とします。
    endTime を new Date(date2).getTime() とします。
    開始時間 == 終了時間の場合
      true を返します。
    }
    false を返します。
  },
  getDateArr(str) {
    [this.getYear(str), this.getMonth(str), this.getDate(str), this.getHour(str), this.getMinute(str)] を返します。
  },
  isDateString(文字列) {
    /\d{4}(\-|\/|.)\d{1,2}\1\d{1,2}/.test(str) || /^([01][0-9]|2[0-3])(:[0-5][0-9]){1,2}$/.test(str) を返します。
  },
  getYear(値) {
    this.isDateString(value) を返します。value.split(' ')[0].split(/-|\/|\./)[0] : value.getFullYear();
  },
  getMonth(値) {
    this.isDateString(value) を返します。value.split(' ')[0].split(/-|\/|\./)[1] : value.getMonth() + 1;
  },
  getDate(値) {
    this.isDateString(value) を返します。value.split(' ')[0].split(/-|\/|\./)[2] : value.getDate();
  },
  getHour(値) {
    if (this.isDateString(値)) {
      const str = value.split(' ')[1] || '00:00:00';
      str.split(':')[0]を返します。
    }
    戻り値.getHours();
  },
  getMinute(値) {
    if (this.isDateString(値)) {
      const str = value.split(' ')[1] || '00:00:00';
      str.split(':')[1]を返します。
    }
    戻り値.getMinutes();
  }
};
デフォルトの Utils をエクスポートします。

要約する

この記事はこれで終わりです。皆さんのお役に立てれば幸いです。また、123WORDPRESS.COM のその他のコンテンツにも注目していただければ幸いです。

以下もご興味があるかもしれません:
  • JavaScript DateUtils の定義と使用例
  • JavaScript 日付ツールクラス DateUtils の詳細な説明
  • JavaScript の 50 以上のユーティリティ関数の概要
  • Java 開発ツール - scala json 形式処理ツール - json4s の詳細な説明
  • JavaScript 共通ツール関数ライブラリの概要

<<:  マークアップ言語 - HTML を学んだ後に何を学ぶべきか?

>>:  docker で mysql に接続できない場合の解決策

推薦する

qt.qpa.plugin の問題を解決: Ubuntu 18.04 の Qt で Qt プラットフォーム プラグイン「xcb」をロードできませんでした

問題の説明Qt5.15.0 をインストールした後、テスト ケースを実行するとエラーが表示されます。 ...

ハッシュテーブルのJavaScript実装の詳細な説明

目次1. ハッシュテーブルの原理2. ハッシュテーブルの概念3. ハッシュ競合問題1. チェーンアド...

Taobao ストアでズームインする効果は、スライドショーを使用する原理に似ています。

今日は、スライドを使用する原理に似た、Taobao のフロントエンドのマウス ズーム効果に慣れました...

Docker を使用して ELK ログ システムを構築する例

以下のインストールではすべて、インストール ルート ディレクトリとして ~/ ディレクトリが使用され...

Pythonで書かれたWebアプリケーションをDockerでデプロイする実践

目次1. Dockerをインストールする2. コードを書く3. Dockerfileを書く4. 画像...

Docker を使って LEMP 環境を素早く構築する方法の例

LEMP(Linux + Nginx + MySQL + PHP)は、基本的に今日のWeb開発者にと...

Rails APIを使用してReactアプリケーションを構築するための詳細な手順

目次バックエンド: Rails API部分フロントエンド: React部分Reactコンポーネントa...

シンプルなHTMLとCSSの使い方の詳細な説明

HTML と CSS を含む JD.com のホームページの静的ページ効果を 3 日間で完成させます...

Vue を使用してモバイル APK プロジェクトを完了することについての簡単な説明

目次基本設定エントリファイル main.jsアプリ.vue表紙ヘッダー検索バー本体当プロジェクトでは...

MySQL のデータ型とフィールド属性の原理と使用法の詳細な説明

この記事では、MySQL のデータ型とフィールド属性について説明します。ご参考までに、詳細は以下の通...

ラベルタグの使用時に発生する問題の分析と解決策

最近何かをするときにラベル タグを使用しました。以前はラベル タグをほとんど使用していなかったため、...

実践で遭遇するフロントエンドの基本(HTML、CSS)

1. div css マウスの手の形は cursor:pointer; です。 2. HTML の相...

Alibaba Cloud Docker Yum ソースを使用した Docker 17.03.2 の CentOS7 オンラインインストールの詳細説明

参照ドキュメント公式 Docker インストール ドキュメント: https://docs.dock...

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

パート1: 基礎1. :active や :hover などの疑似クラスとは異なり、これらはすべて疑...

Linuxサーバー間のリアルタイムファイル同期の実現

使用シナリオ既存のサーバー A と B の場合、サーバー A の指定されたディレクトリ (たとえば、...