- トップページ
- 特集PC技術
- とあるJavaScriptの情報図書
- 【JavaScript】[ECMAScript] 比較演算子
とあるJavaScriptの情報図書
【JavaScript】[ECMAScript] 比較演算子
比較演算子は左辺と右辺を比較した結果を返す演算子です。
比較演算子は、条件文や繰り返し文で使用します。
演算子について気をつけないといけないところは補足します。
目次
- [1] 等値演算子(==)
- [2] 不等演算子(!=)
- [3] 小なり演算子(<)
- [4] 大なり演算子(>)
- [5] 小なりイコール演算子(<=)
- [6] 大なりイコール演算子(>=)
- [7] 同値演算子(===)
- [8] 非同値演算子(!==)
- [9] 条件演算子(?:)
- [10] 更新履歴
[1] 等値演算子(==)
左辺と右辺が等しいときに「true」を等しくないときに「false」を返す演算子です。
var a = 10; var array1 = ["test","test2","test3"]; var array2 = ["test","test2","test3"]; // 10と10(a)を比較 document.writeln(a == 10); // 10と5を比較 document.writeln(a == 5); // データ型が違うときは自動的に変換して比較 document.writeln(1 == true); // 参照型同士を比較したときは同じアドレスに格納しているか見る document.writeln(array1 == array2);
等値演算子は、「データ型が異なったときにどうにかして同じにみえないか」で判定します。
つまり、データ型が異なったときに自動的に変換して比較をします。
参照型同士を比較したときは同じアドレスを参照しているのか調べます。
[2] 不等演算子(!=)
左辺と右辺が異なったときに「true」を等しかったときに「false」を返す演算子です。
var a = 10; var array1 = ["test","test2","test3"]; var array2 = ["test","test2","test3"]; // 10と10(a)を比較 document.writeln(a != 10); // 10と5を比較 document.writeln(a != 5); // データ型が違うときは自動的に変換して比較 document.writeln(1 != true); // 参照型同士を比較したときは同じアドレスに格納しているか見る document.writeln(array1 != array2);
等値演算子の働きの反対の動作をする演算子です
[3] 小なり演算子(<)
左辺が右辺より小さいとき「true」を以上だったときに「false」を返す演算子です。
var a = 10; document.writeln(5 < a); document.writeln(a < 5);
[4] 大なり演算子(>)
左辺が右辺より大きいとき「true」を以下だったときに「false」を返す演算子です。
var a = 10; document.writeln(5 > a); document.writeln(a > 5);
[5] 小なりイコール演算子(<=)
左辺が右辺以下のとき「true」を大きいときに「false」を返す演算子です。
var a = 10; document.writeln(5 <= a); document.writeln(a <= 5);
[6] 大なりイコール演算子(>=)
左辺が右辺以上のとき「true」を小さいときに「false」を返す演算子です。
var a = 10; document.writeln(5 >= a); document.writeln(a >= 5);
[7] 同値演算子(===)
左辺と右辺の値が等しくてデータ型も同じときに「true」をそうではないときは「false」を返す演算子です。
var a = 10; var array1 = ["test","test2","test3"]; var array2 = ["test","test2","test3"]; // データ型も値も同じ document.writeln(a === 10); // 値は同じだが、データ型が違う document.writeln(a === "10"); // データ型が違う document.writeln(1 === true); // 参照型同士 document.writeln(array1 === array2);
等値演算子(==)はどうにかして同じと見せられないかでしたが、同値演算子(===)はさらに厳密に比較します。
文字列型の10と数値型の10は見た目が同じですが、データ型が違うためfalseとなります。
[8] 非同値演算子(!==)
左辺と右辺の値が等しくない場合か、又はデータ型が異なる場合に「true」をそれ以外のとき「false」を返す演算子です。
var a = 10; var array1 = ["test","test2","test3"]; var array2 = ["test","test2","test3"]; // データ型も値も同じ document.writeln(a !== 10); // 値は同じだが、データ型が違う document.writeln(a !== "10"); // データ型が同じで値が違うとき document.writeln(a !== 5); // 参照型同士 document.writeln(array1 !== array2);
[9] 条件演算子(?:)
ちょっと特殊な演算子です。
説明する前にまずは、プログラムを見てください。
var a = 10; document.writeln((a > 5) ? "5より大きい" : "5以下です");
「条件式 ? 式1 : 式2」の形式で記述し、条件式がtrueの場合は式1をfalseの場合は式2を実行します
[10] 更新履歴
日付 | 詳細 |
---|---|
2011/06/14 | コンテンツ公開 |
コメントの投稿
トラックバックURL
http://www.isl.ne.jp/cgi-bin/mt/mt-tb.cgi/1664