日付の比較する関数でreturnの部分の上3つの出力結果は一見正しく見えるようなのですが正しくないそうです、最後の行が正しいそうです
その理由を説明お願いします
function isToday(date) {
const today = new Date();
return date.getTime() === today.getTime(); // ダメ
return date.getDate() === today.getDate(); // ダメ
return date.toUTCString() === today.toUTCString(); // ダメ
return date.toDateString() === today.toDateString(); // OK
}
const tomorrow = new Date();
tomorrow.setDate(tomorrow.getDate() + 1);
const yesterday = new Date();
yesterday.setDate(yesterday.getDate() - 1);
console.log(isToday(new Date()));
console.log(isToday(tomorrow));
console.log(isToday(yesterday));
No.1ベストアンサー
- 回答日時:
こんにちは
Dateオブジェクトは、基本的にミリ秒単位での値を保持しています。
「日付の比較」をしたいのなら、時刻以下の相違は無視するような判定が必要になります。
その点では、getTime()、toUTCString()は時刻以下も含むので適切ではありません。
一方で、getDate()は日にちだけの比較になるので、年、月が異なっていても同じと判断してしまいます。
ご提示のサンプルでは、1日ずらして比較していますけれど、1時間やひと月ずらして比較してみれば、違う結果が出ますので意味がわかると思います。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- JavaScript 1日1回引けるJavaScriptおみくじについて 1 2022/12/12 22:28
- JavaScript gasについて 1 2022/05/31 21:51
- その他(プログラミング・Web制作) python 気象データの取得 2 2023/06/20 23:54
- Visual Basic(VBA) swiftで年号を 1 2023/02/05 06:48
- CGI perlで書いたcgiでsqliteの使い方を教えてください 2 2023/05/08 21:29
- JavaScript 画像の表示位置 3 2022/12/23 08:25
- UNIX・Linux cronの@rebootでのdateコマンドの実行につきまして 2 2023/06/11 16:23
- Excel(エクセル) エクセルの数式で教えてください。 2 2023/01/10 09:15
- PHP 共通の処理をまとめる方法がわからないのでアドバイスお願いします。 1 2022/12/19 20:20
- その他(プログラミング・Web制作) pythonのpandasのcsvの外部結合(outer_join)した際に列が想定とは異なる事象 1 2022/05/25 13:23
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
functionから別のfunctionを実...
-
クリックすると上に開くアコー...
-
jqueryの変数を関数の外に出す方法
-
関数でy=g(x)のgとは何の略です...
-
jQueryでのレスポンシブが綺麗...
-
関数名をテキストから読み込む...
-
JavaScript window.openで開く...
-
同じIDで定義した要素の配列を...
-
javascriptでiframeのURL変更は?
-
ボタンをクリックすると数が増...
-
jspからjavascriptの変数引継ぎ
-
C#で、ContextMenuStripに動的...
-
画像上のクリックした場所が分...
-
undefinedを表示させない方法は...
-
webページ上のTabキーの動き
-
var_dumpのdump意味はを知りた...
-
hoge の謎
-
Boolean型配列中のTrueの有無を...
-
Inherits EventArgsの初期化
-
配列の初期化
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
functionから別のfunctionを実...
-
idを使わずにonclickで自身の要...
-
関数でy=g(x)のgとは何の略です...
-
jQueryの :not() .not() が有効...
-
クリックすると上に開くアコー...
-
JAVAスクリプトで指定時間以降...
-
関数の中の値を取り出したい
-
javascript(jQuery)でセル内...
-
ページ内に複数表がある場合のT...
-
XMLHttpRequestでキャッシュを...
-
jQuery|要素だけを変更できま...
-
jQueryでzipを解凍読み込みする...
-
jslintのエラーについて質問
-
画像がフェードイン・アウトす...
-
変数のスコープの問題?
-
【javascript 】addEventListen...
-
チェックBOX入力後、ある時間に...
-
roundupについて教えてください。
-
[jQuery] クリックで連番関数を...
-
Matlabで自作関数をオーバーロード
おすすめ情報
