Java Script の基本

1.HTMLファイル内にJavaScriptを記述する方法

 次のように<script>〜</script>内に記述する。

	<script language="JavaScript">
	  JavaScriptの命令
	</script>

2.JavaScriptでの行の記述

 行の区切りとして ; (セミコロン)を用いる。命令の途中で改行することは可能である。

3.JavaScriptでのデータ

 数値データと文字列データが利用でき、数値データとして10進数、8進数、16進数を使うことができ
る。8進数は先頭に0、16進数は先頭に0xを付けることで表す。負数の場合は、先頭に -(マイナス)
を付ける。大きい数値や小さい数値の場合は、eまたはEを使って記述することもできる。

        1.23e5   または 1.23E5   ←→ 1.23×105   ←→ 123000
        1.23e-10 または 1.23E-10 ←→ 1.23×10-10  ←→ 0.000000000123

 文字データは、" (ダブルクオーテーション)または ' (クオーテーション)で囲む。

4.JavaScriptでの変数名

 変数名は、英文字または _ (アンダーバー)で始めなければならない。2文字目以降には数字を使
用することもできる。JavaScriptでは、大文字と小文字の区別をするので、abcとAbcは別の変数名にな
る。

5.JavaScriptでの演算

 主な演算子として、次のものが用意されている。
	加算: + 例: z=x+y 変数xとyに代入されている数値が加算され変数zに代入
	減算: - 例: z=x-y 変数xとyに代入されている数値が減算され変数zに代入
	乗算: * 例: z=x*y 変数xとyに代入されている数値が乗算され変数zに代入
	除算: / 例: z=x/y 変数xとyに代入されている数値が除算され変数zに代入
	剰余: % 例: z=x%y 変数xに代入されている数値を変数yに代入されている数値で割った
			    ときの剰余(余り)が変数zに代入

6.JavaScriptでの代入文および略記法

 代入文は、z=x+yのように記す。すなわち、左辺には一つの変数を記し、右辺には式を記す。最初に
右辺の式が演算され、演算された後でその演算結果が、左辺の変数に代入される。x=x+2という代入文
は、変数xに代入されている値を2だけ増やすことを意味する。

 JavaScriptでは、次のような代入文の略記法が用意されており、しばしば利用される。

	x=x+y → x+=y		x=x-y → x-=y		x=x*y → x*=y
	x=x/y → x/=y		x=x%y → x%=y

7.JavaScriptでの比較演算

 if文などで使用される比較演算子としては以下のものがあり、比較した結果はtrueまたはfalseとな
る。
	== :両辺の数値または文字列が等しいときtrue、さもないときfalse
	!= :両辺の数値または文字列が等しくないときtrue、さもないときfalse
	>  :左辺の数値の方が大きいときtrue、さもないときfalse
	>= :左辺の数値の方が大きいか等しいときtrue、さもないときfalse
	<  :左辺の数値の方が小さいときtrue、さもないときfalse
	<= :左辺の数値の方が小さいか等しいときtrue、さもないときfalse

8.JavaScriptでの文字列演算

 文字列の演算としては、連結 + が用意されている。例えば、"My name is "+"Kamiyama." の演算結
果は "My name is Kamiyama." となる。変数hに文字列 "My name is " が代入されているとき、
h=h+"Kamiyama." または h+="Kamiyama." とすれば、hに "My name is Kamiyama."が代入される。

9.JavaScriptでの数値演算関数

 JavaScriptでの数値演算関数は、Math.***()と記述し、()内に「数式」を記入する。「数式」とは、
@数値データ、A変数、B数値データ・変数・関数を演算子でつないだ数式のいずれかである。用意さ
れている関数の主なものとして次のものがある。

	Math.abs() :絶対値を計算		Math.exp() :eの累乗を計算
	Math.log() :常用対数を計算		Math.sqrt() :平方根を計算
	Math.ceil() :値以上で最小の整数を計算 (例)Math.ceil(-5.2) → -5
	Math.floor() :値以下で最大の整数を計算 (例)Math.floor(-5.2) → -6
	Math.round() :四捨五入
	Math.sin()、Math.cos()、Math.tan() :ラジアン単位の角度のsin、cos、tanを計算
	Math.random()  :0から1の間の乱数を計算。「数式」は記入しない。

 ()内が2つの「数式」となる関数

	Math.max() :2つの値のうち大きい値を計算 (例)Math.max(10,8) → 10
	Math.min() :2つの値のうち小さい値を計算 (例)Math.min(10,8) → 8
	Math.pow() :ベキ乗を計算 (例)Math.pow(2,5) → 2の5乗すなわち32

 これら以外に定数を与える次の関数がある

	Math.E :自然対数の底e			Math.PI :円周率π
	Math.LOG10E :eの常用対数値 xの自然対数値はMath.log(x)/Math.LOG10E

10.JavaScriptでの型変換

 文字列型データを数値型データに変換する命令として、eval()、parseFloat()、parseInt()がある。
eval()とparseFloat()は小数点付き数値に変換し、小数点以下が0の場合は整数に変換する。
parseInt()は小数点以下を切り捨てた整数に変換する。

 parseFloat()、parseInt()の()内には、文字列表現された数値(例えば、"123.45")のみが記入で
きる。

 eval()の()内には、文字列表現された数値以外に文字列表現された数式(例えば、"1+2*3"または
 "2*a+b")を記すことができる。数式の場合は数式が計算され、計算結果の数値に変換される。

11.JavaScriptでの変if文

 条件式を判定して、その判定結果に応じた処理を行うためにif文を使用する。if文の基本形は、次の
ようになる。

	if(条件式){	← 条件式として7.の比較演算式が使用される。
	  命令群1	← 条件式がtrue(真または成り立つ)のとき実施される。
	}
	else{
	  命令群2	← 条件式がfalse(偽または成り立たない)のとき実施される。
	}

命令群2として書くものがないとき、else{}は省略可能である。命令群が1つの文であるときは前後の
{}が省略可能である。条件式の例は次のようになる。

	x>5		← 変数xの値が5より大きいときtrue
	x==0		← 変数xの値が0のときtrue
	x>0 && x<=10	← 変数xの値が正でかつ10以下のときtrue
	x>0 || y>0	← 変数xの値が正または変数yの値が正のときtrue

12.JavaScriptでの繰り返し命令(for文)

 for文は、決められた回数だけ命令群を繰り返すときに使用する。for文の基本形は、次のようにな
る。

	for(k=1;k<=10;k++;){
	  命令群
	}

forの後ろの()内が繰り返し回数を示すための記述である。この例では、回数をカウントする変数とし
てkを用い、kを1から初めて(k=1)、1増しずつに(k++)、10になるまで(k<=10)繰り返すこと
を意味する。なお、k++はk=k+1と同じである。したがって、この例の場合は、命令群が10回繰り返さ
れることになる。命令群の中で関数を示すkを使用することが多い。命令群が1つの文であるときは{}
が省略可能である。()内の記述の例は、次のようになる。
	i=0;i<3;i++	← 変数iが0, 1, 2と変化し、3回繰り返される。
	t=0.0;t<=1.0;t=t+0.1 ← 変数tが0.0, 0.1, 0.2,..., 1.0と変化し、11回繰り返される。

次の例のようにfor文が二重に組み合わされることも多い。

	for(i=1;i<=10;i++){
	  for(j=1;j<=5;j++){
	   命令群
	  }
	}

このとき、iが1のときjが1, 2, 3, 4, 5と変化し、iが2のときもjが1, 2, 3, 4, 5と変化する。したが
って、命令群は50回繰り返されることになる。for文の基本は

	s=0;
	for(i=1;i<=100;i++){
	  s=s+k;
	}

であり、1から100までの総和を変数sに求めるものである。この場合、命令群が1行であるので、次の
ようにしてもよい。

	s=0;
	for(i=1;i<=100;i++) s=s+k;
 
13.JavaScriptでの配列

 「配列」とは、いくつかの変数をセットにして扱うためのものである。配列を使用するときは、次の
ようにして定義する。

	var A=new Array();
	var B=new Array(0,31,28,31,30);

上の文は、Aを配列として使用することを宣言しており、下の文はBを配列として使用し、Bの第1要素
から第5要素にそれぞれ0, 31, 28, 31, 30を代入することを意味している。なお、配列の大きさは自
動的に調整されるので気にする必要はない。

 配列Aの第1要素はA[0]と記し、第2、第3要素はA[1]、A[2]となり、0から始まることに注意すべき
である。配列要素の番号を示す0, 1, 2は添字(そえじ)と呼ばれる。配列の便利なところは、添字と
して数式が使用できるところにある。変数kに5が代入されているとき、A[k]はA[5]、A[k+1]はA[6]と同
じである。添字付きの配列A[k]、B[3]などは、変数と同じに使用することができる。

	B[5]=31;

は配列Bの第6要素に31を代入する命令である。A[0], A[1], ..., A[10]に数値が代入されているとき

	s=0;
	for(k=1;k<=10;k++) s=s+A[k];

は、A[0], A[1], ..., A[10]に代入されている数値の総和を求める命令となる。