特集PC技術

コアJavaScript(ECMAScript)の図書室

 

10冊目 【JavaScript】[ECMAScript] 比較演算子

比較演算子は左辺と右辺を比較した結果を返す演算子です。
比較演算子は、条件文や繰り返し文で使用します。
演算子について気をつけないといけないところは補足します。

目次

[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

サイト内検索

コアJavaScript(ECMAScript)の図書室

twitterTwitter

最新ブログ記事

2015年06月13日

JavaScriptの情報室

4冊目 ハイブリッドアプリが作れる。tabris.js

2014年10月16日

C++言語学習録

第3回 ファイルを分割してみよう

2014年10月09日

C++言語学習録

第2回 オブジェクト指向の復習

2014年10月02日

C++言語学習録

第1回 C++の開発環境を整える

2014年09月25日

Swiftを試してみようなう。

第4回 Swiftでクラスを使うなう。

ISL 情報戦略研究所

pagetopこのページの先頭へ戻る