変数・演算子

Index  Back  Next
変数

1.【変数】

  プログラムの実行中に値が変化するものを変数といいます。変数とは値を格納して
 おく、入れ物のように考えていいと思います。


2.【型の宣言】

  JavaScript における変数の型の宣言は、C言語のように明確な区別はなく、かな
 り曖昧なもので、
  var a=3;
  var B="Hello";
 というように整数型も文字列などもすべて var でおこないます。また、
  function abc()
  {
    var a;
    var b;
 などのように関数内に宣言すると変数 a,b は関数 abc() 内だけで有効なローカルな
 変数となります。
  var a;
  var b;
  function abc()
  {
 とすると全ての範囲において共通に使用できるグローバルな変数になります。また、
  var a,b=3;
 といったようにカンマで区切ることによって、まとめて宣言することができ、b=3 の
 ように宣言時に初期値 3 を与えることもできます。
 データのサイズは全て8バイト( もしかしたら違うかも? )。


演算子

1.【算術演算子】

  加減乗除を行うものを算術演算子といい、これはどの言語にもある標準的な演算子
 です。
演算子 はたらき優先順位
- 負符号1
* 乗算2
/ 除算2
演算子 はたらき優先順位
% 余り2
+ 加算3
- 減算3
 [例] c = 13 * a + b % 3


2.【関係演算子】

  関係演算子、if 文などで条件判断をするためのものです。
演算子 はたらき優先順位
< 大きい1
>= 大きいまたは等しい1
< 小さい1
演算子 はたらき優先順位
<= 小さいまたは等しい1
== 等しい2
!= 異なる2
 [例] if( a > b ) a=0;
  もし a が b より大きいなら、a に 0 を代入します。


3.【論理演算子】

 論理演算子は、複数の条件判断を組み合わせるときに使用します。
演算子 はたらき優先順位
! NOT1
&& AND2
|| OR3
 [例] if( a >= b && c != 100 ) a=0;
  もし a が b 以上、かつ c が 100 でないならば a に 0 を代入。


4.【インクリメントとディクリメント演算子】

  インクリメント演算子が ++、ディクリメント演算子が -- です。これらは、
  i++;
  I--;
 と使用し、それぞれ
  i = i + 1;
  i = i - 1;
 と働きが同じで、1 を加算したり、減算したりする演算子です。


5.【ビット演算子】

  ビット演算子は、数値を 2 進数で表した "1" または "0" の各ビットごとの演算
 のことを言います。16 進数の 0xf0f0( JavaScript では 16 進数ということが分
 かるように、16 進数値の前に 0x をつけます。)を 2 進数で表現すると
 1111000011110000 となります。これらの各桁の操作することをビット演算といいま
 す。
  ビット演算子には ~、&、|、^ があり、これらはそれぞれ否定、論理積、論理和、
 排他的論理和のことです。これらの真理値表を以下に示します。
否定(NOT)
aa~
10
01
論理積(AND)
aba&b
000
010
100
111
論理和(OR)
aba|b
000
011
101
111
排他的論理和(XOR)
aba^b
000
011
101
110
 [例] 論理積 a & b a = 0xff1a、b = 0x7fff
  a      1111111100011010  //0xff1a
  b      0111111111111111  //0x7fff
  a & b  0111111100011010


6.【シフト演算子】

  左シフト a << b で a の各ビットを b ビット左へシフトします。あいた右の b
 ビットには 0 が入ります。
  右シフト a >> b で a の各ビットを b ビット右へシフトします。あいた左の b
 ビットには 1 が入ります。C言語の場合、変数が符号なしの場合に 0 が入り、符号
 ありの場合に符号桁が入っていたが、JavaScipt の場合、変数に型がないので常に
 1 が入っているみたいです。

 [例] 左シフト a << 3  a = 0xff1a
  a       1111111100011010  //0xff1a
  a << 3  1111100011010000


7.【代入演算子】

  代入演算子とは = のように右辺の値を左辺の変数に、代入するといったもので
 = 以外にも JavaScipt にはいくつかあります。例えば a = a + 3 といった式は、
 a += 3 と書くことも可能です。+= も代入演算子です。他に、
  +=、-=、*=、/=、%=、<<=、>>=、&=、|=、^=
 などがあります。


8.【条件演算子】

 条件演算子には ? と : があり、使い方は、
  c = ( a < 0 ) ? b : -b;
 これは、もし a が 0 より小なら c = b、そうでないなら c = -b となります。