JavaScript講座第2回


変数

今回は変数についての講座です。変数ってなに?という人がいると思いますので説明します。変数とは何かを入れることのできるうつわとおもってください。変数名 hen に 5 という数字を代入すると、hen を 5 として利用できます。 hen + 2 は 7 になります。また、数値以外にも文字を代入することもできます。


変数宣言

変数を利用するときには必ず宣言が必要です。宣言が無ければエラーが発生して動きません。宣言するには var というキーワードを使います。

var number;
number = 25;

上記は「変数名 number の変数を使用しますよ」と宣言しています。次にnumberに25を代入しています(変数に初めて値を代入することを初期化といいます)。宣言をすれば変数を利用する事ができます。文字や数値のどちらでも var を使って宣言するだけです。

var name = "ABC";

上記は変数nameを宣言して、同時に文字列ABCで初期化しています。文字を代入(初期化)するときには"(ダブルクォーテーション)又は'(シングルクォーテーション)でくくります。また、以下のスクリプトはいずれも有効に動きます。

var name1 = "ABC";

var name2;
name2="CDE";

var num1;

num1 = 25;
var num2 =36;


変数を使った演算

さて、JavaScriptでは演算ができないの?と言われそうなのでそろそろ演算してみます。

var a = 20;        //aを宣言し20を代入
var b = 30;        //bを宣言し30を代入
var c;           //cを宣言
c = a + b;         //cにa+bを代入(cは50が代入されます。)
document.write ( c );  //cを表示

以下は文字の演算です。文字列の場合は文字列をただ単に連結するだけです。数字と同じくキーワード + を使います。

var a = "abc";        //aを宣言し文字列abcを代入
var b = "def";        //bを宣言し文字列defを代入
var c;             //cを宣言
c = a + b;          //cに文字列abcdefを代入
document.write ( c );   //cを表示

以下は変数 i を宣言し、1で初期化します。次に i の値に1足した値を i に代入します。

var i;            //iを宣言
i = 1;            //iを1で初期化
i = i + 1;          //iの値を1だけ大きくする(iは1だったので、2になりました。)
document.write( i );   //iを表示

ここで、
i = i + 1;
という、数学では到底あり得ない表現が出てきました。 = は数学で言う等しいと言う意味ではありません。代入という意味があります。=をはさんで右側を左側に代入するという意味があります。数学で言うイコールは、JavaScriptでは == で表します。
以下の式はいずれも同じ意味になります。特殊な表現がありますので難しいかもせれません。

i = i + 1;  //表現はいろいろですが、いずれも変数 i の値に1を足した数を、変数 i に代入しています。
i += 1;   
++i;    
i++;

上記のように、変数に1を足すことをインクリメントと呼ぶことが多いです。逆に変数から1を引くことをデクリメントと呼ぶことがあります。以下はいずれもデクリメントを行っています。

i = i - 1;  //表現はいろいろですが、いずれも変数 i の値に1を引いた数を、変数 i に代入しています。
i -= 1;   
--i;    
i--;


配列変数

CやBasicではよく使われる配列変数です。変数は便利ですが、一度にたくさんの変数を扱うときには変数だけでは不便です。そこで一度にたくさんの変数を扱うことができる配列を使います。

ary = new Array();

上記は変数名 ary の配列変数を宣言しています。配列の宣言にはキーワードnew Arrayを使います。

var i = 0;
ary = new Array();    //配列aryを宣言します
ary[0] = 1;         //ary[0]を1で初期化
ary[1] = 2;         //ary[1]を2で初期化
ary[2] = 3;         //ary[2]を3で初期化
document.write(ary[i]);  //ary[0]を表示
i++;             //変数 i の値に 1 を足します。0だったので1になります。
document.write(ary[i]);  //ary[1]を表示
i++;             //変数 i の値に 1 を足します。1だったので2になります。
document.write(ary[i]);  //ary[2]を表示


次回は制御に関して紹介します。制御を使えば同じ命令を何度も繰り返して実行したり、条件によって処理を分岐する事ができます。

backnext

講座メインページへ