関係演算子
【開発環境】
OS:Win11(64ビット)
VSCode1.72.2、
クロム
【関係演算子の種類と使い方】
関係演算子には次の 4 種類が用意されている。
< より小さい
<= 以下
> より大きい
>= 以上
関係演算子は 2 つの値を比較し true または false を返しますため、 if 文や for 文などの条件式を記述するところで利用されることが多い。
サンプル文
let score = 78;
if (score > 70){
console.log('合格です');
}else{
console.log('不合格です');
}
> 合格です
■より小さい(<)
より小さい(<)は演算子の前の値が後の値よりも小さかった場合に true を返す
サンプル
console.log(8 < 10);
> true
console.log(8 < 8);
> false
console.log(8 < 6);
> false
■以下(<=)
(<=)演算子の前の値が後の値以下だった場合に true を返す。
サンプル
console.log(8 <= 10);
> true
console.log(8 <= 8);
> true
console.log(8 <= 6);
> false
■より大きい(>)
(>)演算子の前の値が後の値よりも大きかった場合に true を返す。
サンプル
console.log(8 > 10);
> false
console.log(8 > 8);
> false
console.log(8 > 6);
> true
■以上(>=)
以上(>=)演算子の前の値が後の値以上だった場合に true を返す。
サンプル
console.log(8 >= 10);
>> false
console.log(8 >= 8);
>> true
console.log(8 >= 6);
>> true
【数値以外の値の比較方法】
1.文字列と文字列の比較
関係演算子の対象の値がどちらも文字列だった場合、文字列に含まれる文字の Unicode コードポイントの値を使って比較します
※文字の Unicode コードポイントは String オブジェクトの codePointAt メソッドで取得することができます。
サンプル
console.log('a'.codePointAt(0));
> 97
console.log('A'.codePointAt(0));
> 65
console.log('A' > 'a');
> false
2.数値と文字列の比較
数値と文字列だった場合、文字列を数値変換してから数値として比較します。文字列が数値に変換できなかった場合は NaN に変換され、関係演算子は常に false が返ります。
サンプル
console.log('120' > 3);
> true
数値と文字列の比較となるため、まず文字列の '120' が数値の 120 に変換された上で、数値の 3 と比較します。その結果 120 > 3 は true を返します。
文字列に数値以外の文字が含まれていた場合
console.log('flower' > 3);
> false
3.数値と文字列以外の値の比較
オブジェクトはまずプリミティブ型の値に変換された上で比較が行われます。
true や false は数値の 1 と 0 に変換された上で比較が行われます。 null は 0 に変換されます。 undefined はNaN に変換されるため、いずれも場合も false となります。
サンプル
console.log(true > false);
> true
console.log(true > 0);
> true
console.log(false > 0);
> false
console.log(null >= 0);
> true
console.log(null < 0);
> false
console.log(undefined > 0);
> false
console.log(undefined <= 0);
> false