比較演算子
2 つの式を比較した結果を示すブール値を返します。
expression1 comparisonoperator expression2
引数
- expression1
任意の式を指定します。 - comparisonoperator
任意の比較演算子を指定します。 - expression2
任意の式を指定します。
解説
文字列を比較する場合、JScript では Unicode のコード順に基づいて比較を行います。
次は、比較演算子の種類によって、expression1 と expression2 がどのように比較されるかをまとめたものです。
関係演算子 (<, >, <=, >=)
- expression1 と expression2 の両方を数値に変換しようとします。
- 式が両方とも文字列の場合、Unicode 順で比較が行われます。
- 一方の式が NaN の場合、偽 (false) が返されます。
- マイナスの 0 は、プラスの 0 と等しいと評価されます。
- マイナスの無限大は、それ自身を含むすべての式よりも小さいと評価されます。
- プラスの無限大は、それ自身を含むすべての式よりも大きいと評価されます。
等価演算子 (==、!=)
- 2 つの式のデータ型が異なる場合、文字列、数値、ブール値の順に変換を試みます。
- NaN は、それ自身を含む、いかなる値とも等しくないと評価されます。
- マイナスの 0 は、プラスの 0 と等しいと評価されます。
- null は、null と undefined の両方と等しいと評価されます。
- 2 つの値が同一の文字列である場合、等価な数値である場合、同じオブジェクトである場合、および同一のブール値である場合、これらの値は等しいと評価されます。また、2 つの値のデータ型が異なる場合、データ型の変換を行ってこのうちのいずれかに当てはまれば、2 つの値は等しいと評価されます。
- 上記以外の比較演算は等しくないと評価されます。
識別演算子 (===
、!==
)
これらの演算子は、等価演算子と同様に比較を行います。ただし、データ型の変換は行われず、同じデータ型でないと等しいとは評価されません。