ホームページ > ウェブフロントエンド > jsチュートリアル > 「typeof NaN」が「数値」を返すのはなぜですか?

「typeof NaN」が「数値」を返すのはなぜですか?

Patricia Arquette
リリース: 2024-11-29 20:09:11
オリジナル
433 人が閲覧しました

Why Does `typeof NaN` Return 'number'?

typeof NaN が 'number' を返すのはなぜですか?

「数値ではない」(NaN) とラベル付けされた値が、次の関数によって数値として扱われるのは逆説的に見えるかもしれません。演算子の種類。ただし、この動作は NaN の根本的な性質に由来しています。

まず、NaN は、その名前に反して数値型です。無効または未定義の数値を表します。すべての数値は近似値であり、制限がありますが、NaN は正確に表現できない数値の特定のインスタンスです。

第 2 に、NaN は、それ自体を含む他の値と等しくありません。これは、NaN が特定の値ではなく、無効または未定義の結果のプレースホルダーであるためです。したがって、NaN をそれ自体または他の値と比較すると、常に false が返されます。

分かりやすい用語での説明を理解する

NaN との比較は、常に順序付けされていない結果を返します。

NaN は、それ自体を含め、どの数値とも等しくありません。これは、NaN をそれ自体と比較しても false になることを意味します。

シグナリング比較述語と非シグナリング比較述語:

未満またはより大きいなどの一部の比較演算、NaN を処理する場合、例外をスローするか false を返すことができます。これらの操作は、シグナリング述語および非シグナリング述語として知られています。

等価および不等式を使用した NaN のテスト:

等価および不等式のテストは非シグナリングであるため、例外をスローしません。通常の数値がそれ自体と等しいかどうかをテストすると、常に true が返されます。ただし、NaN がそれ自体と等しいかどうかテストされると、常に false が返されます。これは、NaN 値を「静かに」検出する便利な方法を提供します。

以上が「typeof NaN」が「数値」を返すのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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