JavaScriptで2つの日付を比較する 質問する

JavaScriptで2つの日付を比較する 質問する

JavaScript を使用して、過去より大きい、小さい、または過去ではない2 つの日付の値を比較する方法を提案してもらえますか? 値はテキスト ボックスから取得されます。

ベストアンサー1

日付オブジェクトは、必要なことを実行します。つまり、日付ごとに 1 つずつ作成し、、、または を使用>して比較します<<=>=

==、、、および演算子は、次のように使用する必要があります!====!==date.getTime()

var d1 = new Date();
var d2 = new Date(d1);
var same = d1.getTime() === d2.getTime();
var notSame = d1.getTime() !== d2.getTime();

明確に言えば、日付オブジェクトと直接等しいかどうかをチェックするだけではうまくいきません

var d1 = new Date();
var d2 = new Date(d1);

console.log(d1 == d2);   // prints false (wrong!) 
console.log(d1 === d2);  // prints false (wrong!)
console.log(d1 != d2);   // prints true  (wrong!)
console.log(d1 !== d2);  // prints true  (wrong!)
console.log(d1.getTime() === d2.getTime()); // prints true (correct)

ただし、入力検証地獄に陥らないように、テキスト ボックスではなく、ドロップダウンまたは同様の制約された形式の日付入力を使用することをお勧めします。


興味がある方は、date.getTime()ドキュメンテーション:

指定された日付の数値を、1970 年 1 月 1 日 00:00:00 UTC からのミリ秒数として返します。(それ以前の時刻の場合は負の値が返されます。)

おすすめ記事