Last Update 2009/03/29
TOP - JavaScript - 演算子 - == != === !==
比較結果により true か false を返します。
文字列、数値、論理値は値による比較、配列、オブジェクト、関数は参照位置による比較を行います。
下記の結果の場合に true となります。
文字列、数値、論理値は値による比較、配列、オブジェクト、関数は参照位置による比較を行います。
下記の結果の場合に true となります。
== : 左辺値と右辺値が等しい(左辺と右辺で型が異なる場合は型変換を行い型を合わせる)
!= : 左辺値と右辺値が等しくない(左辺と右辺で型が異なる場合は型変換を行い型を合わせる)
=== : 左辺値と右辺値が等しい(左辺と右辺で型が異なっても型変換は行わない)
!== : 左辺値と右辺値が等しくない(左辺と右辺で型が異なっても型変換は行わない)
(例)
<SCRIPT type="text/javascript">
<!--
function btnclick()
{
var s = "";
// 数値の比較(結果 true)
s = s + "1 == 1 → ";
if (1 == 1) {s = s + true;} else {s = s + false;}
s = s + "\n";
// 数値の比較(結果 false)
s = s + "1 == 2 → ";
if (1 == 2) {s = s + true;} else {s = s + false;}
s = s + "\n";
// 数値の比較(結果 true)
s = s + "1 != 2 → ";
if (1 != 2) {s = s + true;} else {s = s + false;}
s = s + "\n";
var s1 = "a";
var s2 = "a";
// 文字列の比較(結果 true)
s = s + 's1 == s2 → "a" == "a" → ';
if (s1 == s2) {s = s + true;} else {s = s + false;}
s = s + "\n";
var s3 = "a";
var s4 = "b";
// 文字列の比較(結果 false)
s = s + 's3 == s4 → "a" == "b" → ';
if (s3 == s4) {s = s + true;} else {s = s + false;}
s = s + "\n";
s3 = "a";
s4 = "b";
// 文字列の比較(結果 true)
s = s + 's3 != s4 → "a" != "b" → ';
if (s3 != s4) {s = s + true;} else {s = s + false;}
s = s + "\n";
var s5 = "1";
var n1 = 1;
// 型違いの比較(結果 true)
s = s + 's5 == n1 → "1" == 1 → ';
if (s5 == n1) {s = s + true;} else {s = s + false;}
s = s + "\n";
// 型違いの比較(結果 false)
s = s + 's5 === n1 → "1" === 1 → ';
if (s5 === n1) {s = s + true;} else {s = s + false;}
s = s + "\n";
var a1 = [1, 2, 3];
var a2 = [0, 0, 0];
// 配列の比較(結果 false)
s = s + 'a1 == a2 → ';
if (a1 == a2) {s = s + true;} else {s = s + false;}
s = s + "\n";
var a1 = [1, 2, 3];
var a3 = a1;
// 同じ参照位置の配列の比較(結果 true)
s = s + 'a1 == a3 → ';
if (a1 == a3) {s = s + true;} else {s = s + false;}
s = s + "\n";
var a4 = [1, 2, 3];
// 同じ値で違う参照位置の配列の比較(結果 false)
s = s + 'a1 == a4 → ';
if (a1 == a4) {s = s + true;} else {s = s + false;}
s = s + "\n";
alert(s);
}
//-->
</SCRIPT>