No.03 Javascript の記述方法
04 演算子の概念
 
 スクリプトは大きいスパンで考えると、条件分岐と繰り返しの連続ですが、その場合の条件判定を行ったり、数値を変換したりといった作業を行うために必要不可欠なのが「演算子」になります。
 それほど難しく構えることはないのですが( 基本的には加減乗除が中心ですし)、覚えておくと、非常に奥の深いものですし便利な物ですから、一通りこのページで書き記しておくことにします。

演算子の種類

 そもそも演算子とは、スクリプト上での演算を行うために予め用意されている物で、「+」「-」「*」「/」といった四則演算から、「++(インクリメント」「--(デクリメント)」といった、1ずつ加減するもの、「!」「!=」といった論理否定なども含まれます。 ここで全てを紹介することは出来ませんが、代表的なものを下記に記しておきます。

+
数式の値を加算します。
また、文字列の場合は連結を行います。
-
数式の値を減算します。
*
数式の値を乗算します。
/
数式の値を除算します。
++
変数の値をインクリメントします(1加算)
--
変数の値をデクリメントします(1減算)
=
演算の結果を変数へ代入します。
==
互いの値を比較して、正しいかどうかの判断を行います。
>
左側の式が、右側の式より大きいかどうかの判断を行います。
>=
左側の式が、右側の式と等しいか、より大きいかどうかの判断を行います。
<
左側の式が、右側の式より小さいかどうかの判断を行います。
<=
左側の式が、右側の式と等しいか、小さいかどうかの判断を行います。
!
与えられた式の論理否定を行います。
「a」が「true」である場合、「!a」は「false」となります。
!=
互いの式が等しくないかどうかの判断を行います。
「a」が「10」である場合、 「a != 10 」の結果は「false」となります
||
互いの値の論理和を求めます。
「a」=「true」 「b」=「false」 である場合、
「a = true || b = true」は true となります。
&&
互いの値の論理積を求めます。
「a」=「true」 「b」=「false」 である場合、
「a = true && b = true」は false となります。

 基本的な演算子は上記の通りで、これを理解しておけば、スクリプトの論理演算を行う場合に非常に役立ちます。

演算子の優先順位

 算数の加減乗除と同じように、演算子にも無論、優先順位が存在します。
 簡単に言うと「3+4*5」の場合、3+4=7、7*5=35となならずに、3+20=23となるといった感じですね。 算数の優先順位は踏襲していますので基本的な部分で迷うことはありませんが、ややこしいのでここでまとめておくことにしましょう。

()


|

++ --
* /
+ -
!= ==
&&
||
=

 上記の表は、上から順に優先順位を表したものです。

 まず、括弧演算子は、全てにおいて優先されます。 括弧でくくられた式は、加減乗除、比較演算対象に限らず、全てに対して優先されて演算されます。

 注意しなくてはならないのは2番目の「++」「--」です。 これらのインクリメント、デクリメント演算は乗除演算子より優先順位が高くなります。 この為、 「a = a + 1」の場合と、「a ++ 」の場合では、乗除が絡んできた場合に結果が異なることもあるので注意しなくてはなりません。

 3番目の「*」「/」、即ち乗除演算子は、4番目の「+」「-」加算演算子より優先されます。 これは算数と同じですね。

 5番目から7番目には、比較演算子が入ります。 直接結果に結びつく5番目の「!=」と「==」ともかく、6番目と7番目の比較演算子の優先順位は、論理和より論理積が優先されますので、注意が必要な部分です。

 結果を代入する上で必要となる「 = 」演算子は、全てにおいて優先順位が低くなります。


ページの最上段へ移動します