ホームページ > ウェブフロントエンド > jsチュートリアル > JavaScriptで2つの日付の日付部分のみを比較するにはどうすればよいですか?

JavaScriptで2つの日付の日付部分のみを比較するにはどうすればよいですか?

Barbara Streisand
リリース: 2024-11-11 20:26:03
オリジナル
1022 人が閲覧しました

How to Compare Only the Date Parts of Two Dates in JavaScript?

JavaScript での日付部分の比較

2 つの日付を比較する場合、時刻を無視して日付部分のみを考慮したい場合があります。これを JavaScript で実現する方法を次に示します。

間違ったアプローチ

提供されたコードは、ユーザー入力の日付を新しい Date オブジェクト userDate に割り当てて日付を比較しようとしますが、元の時刻は保持されます。これからコンポーネント。これにより、誤った比較が行われます。

修正されたアプローチ

時間とは独立して日付部分を比較するには、ユーザー入力日付の時間部分を明示的にゼロに設定する必要があります。正しいアプローチは次のとおりです。

userDate.setHours(0, 0, 0, 0);
ログイン後にコピー

これを行うと、userDate オブジェクトは日付コンポーネントのみを表すようになり、> を使用して現在と正確に比較できます。演算子。

単純化比較

if 条件を使用する代わりに、より単純な構文を使用できます。

const result = userDate > now;
ログイン後にコピー

代替ソリューション

別のアプローチは次のとおりです。指定された日付オブジェクトから日付部分を抽出するヘルパー関数を作成します:

const getDatePart = (date) => {
  return new Date(date.getFullYear(), date.getMonth(), date.getDate());
};
ログイン後にコピー

その後、== 演算子を使用して 2 つの日付の日付部分を比較できます:

const nowDatePart = getDatePart(now);
const userDatePart = getDatePart(userDate);

const result = nowDatePart == userDatePart;
ログイン後にコピー

以上がJavaScriptで2つの日付の日付部分のみを比較するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート