TOPページ >  JavaScriptの演算および構文 > 論理演算子を使って計算をする

論理演算子を使って計算をする

JavaScript における演算子についてご紹介します。ホームページやブログなどのウェブサイトで、JavaScript を使って演算を行うことができます。ここでは if文での場合分けなどに便利な論理演算子について扱います。

&& 論理積 2つの値の論理積を求めます。(両方が true の場合のみ true)
|| 論理和 2つの値の論理和を求めます。(片方または両方が true なら true )
! 論理否定 指定された値の論理否定を求めます。
?: 条件 条件が true なら1つ目の文、false なら2つ目の文を実行します。
, カンマ 2つの式を続けて実行します。

サンプルです。

<SCRIPT LANGUAGE="JavaScript">
<!--
a = 10 ; b = 5 ;
document.write("a = 10、b = 5 のとき<br>");
document.write("a > b && a < b は ", a > b && a < b ,"です。<br>" );
document.write("a > b || a < b は ", a > b || a < b ,"です。<br>" );
document.write("a > b は ", ( a > b ) ? "真です。" : "偽です。" ,"<br>" );
document.write("a < b は ", ( a < b ) ? "真です。" : "偽です。" );
//-->
</SCRIPT>;

このソースを表示させると、次のようになります。

上記のようなサンプルは、1度表示したらそれっきりですので わざわざ JavaScript を用いて表示するまでもないような内容です。一般的には、フォームなどを使って入力された数値の計算などに用いられます。

下記のフォームの、左側のテキストボックスに、5より小さい または 10より大きく、かつ3で割り切れる整数(つまり 6および 9以外の 3の倍数) を入力して、『答える!』ボタンを押してみてください。正解、不正解が右側のテキストボックス内に表示されます。

このサンプルのソースは、次のようになっています。

<SCRIPT LANGUAGE="JavaScript">
<!--
function CalcA() {
Text1 = eval(document.SanjutuA.text1.value);
document.SanjutuA.ans.value = ( ( Text1 > 10 || Text1 < 5 ) && Text1 % 3 == 0 ) ? "正解です。" : "不正解です。" ;
}
//-->
</SCRIPT>

<form name="SanjutuA">
<input type="text" name="text1" size="4" value="9">
<input type="button" value="答える!" onClick="CalcA()">
<input type="text" name="ans" size="12">
</form>

このように、論理演算子を利用すれば 複数の条件の場合分けを 短いソースで記述することができます。

演算子には 優先順位があります。このサンプルで、 ( Text1 > 10 || Text1 < 5 ) の部分が括弧で括られているのは、論理演算子『||』が、『&&』よりも優先順位が低いため、括弧で括って先に処理させる必要があるからです。

演算子の優先順位については詳細はこちらです。→『演算子の優先順位

ランキングに参加中です! お役に立てたらクリックをお願いします→

同一カテゴリ内一覧
WHILE文を使って条件が満たされるまで処理を繰り返す
FOR文を使って処理を繰り返す1
IF文を使って処理を条件分けする
JavaScript関数の基本
演算子の優先順位
ビット演算子を使って計算をする
代入演算子を使って計算をする
論理演算子を使って計算をする
比較演算子を使って計算をする
算術演算子を使って計算をする
IEの方はこちらから当サイト ブックマークできます。
ランキング参加中!お役に立てたら クリックをお願いします。
当サイト掲載カテゴリは
Yahoo! JAPAN コンピュータとインターネット > データ形式 > HTML > リファレンス