![]()
Javaスクリプトの制御文
条件式
JavaスクリプトではC言語のような条件式が用意されています。
条件式が真ならば式1が評価され、そうでない場合は式2が評価されます。たとえば、(条件式) ? 式1 : 式2
![]()
ageが20以上であればstatusに"adult"をセットし、20未満であれば"minor"をセットします。status = (age >= 20) ? "adult" : "minor"
![]()
If-Else文
判定を行なう時にif-else文を用い、文法としては多くのプログラミング言語と同じく以下のような構文になります。
ここでelse部は省略可能です。まず、ifにある式が計算され、それが真である場合は文1が実行されます。偽であり、かつelse部も存在している場合は文2が実行されます。if-elseは入れ子にすることもできます。if (式) { 文1 } [else { 文2 }]
![]()
if (式1) { if (式2) { 文1 } } else { 文2 }
![]()
ループ文
ループ文にはfor、for...inやwhile文を使用します。for の場合、このようになります。ふつう最初の式(式1)は、ループの中で用いられる変数を1つかそれ以上初期設定するために使われます。式2はループ変数に関する関係テストを行ないます。通常0になるまでループが続けられます。最後の式3はループ制御変数を増減するのが普通です。for (式1; 式2; 式3) { 文 }
![]()
while文は、for (var i = 0; i < 9; i++) { n += i myfunc(n) }
![]()
となり、まず式を計算して答が0でない場合は文を実行し、再度式を計算します。そして、式が0となるまでこのサイクルは続行されます。while (式) { 文 }
![]()
ループ文では、以下のようにすれば、文を無限ループさせることが可能です。for 文では、
while文は、for (;;) { 文 }
このようになります。while (true) { 文 }
![]()
break文
ループを抜ける時はbreakやreturnを使います。次のような記述例だと、iが10であればループを抜けることができます。
var i = 0 while (true) { if (i == 10) break i++ }
![]()
continue文
これはあまり使われていないようですが、ループの次の繰り返しを開始させるのがcontinue文です。以下の例はiが3になった時、n += iはスキップされるため、nの値が1,3,7,12となります。i = 0 n = 0 while (i < 5) { i++ if (i == 3) continue n += i }
![]()
for ... in 文
オブジェクトのすべての属性を指定する場合に用いられます。for (変数 in オブジェクト) { 文 }
![]()
new 演算子
new演算子はユーザ定義オブジェクトタイプの新しいインスタンスを作成します。
オブジェクト名 = new オブジェクトタイプ (パラメータ [ ... ])
![]()
thisキーワード
thisキーワードは、現在のオブジェクトを表わしています。一般にメソッドの中でオブジェクトを呼ぶ際、使用されます。
this[.属性名]
![]()
with文
with文は、デフォルトオブジェクトを前に付けて式を評価できます。
Mathオブジェクトでは、いちいちMath.を書くのが面倒な場合はwith文が便利です。with (オブジェクト) { 文 }
上記文はwith文でなければ、下記のように記述する必要があります。with Math { p = (b+sqrt(4*a*c+pow(b,2)))/(2*a) n = (b-sqrt(4*a*c+pow(b,2)))/(2*a) }
![]()
p = (b+Math.sqrt(4*a*c+Math.pow(b,2)))/(2*a) n = (b-Math.sqrt(4*a*c+Math.pow(b,2)))/(2*a)
![]()
コメント
Javaスクリプトのコメントは、CやC++言語のように、
がコメントとなります。
- /*と*/で囲む(C言語)
- //以降の行(C++言語)
/* ここがコメントです。コメントが複数行に またがっています。 */ // ここがコメントです。
![]()