WebプログラミングT

 目次へ 前へ 次へ

2009/10/6 久米

U.ActionScriptの基本文法 

2 変数

変数は、値の入れ物です。

変数の種類には、次の2種類があります。ここでは自分で作る変数についてお話しします。

  1. 自分で作る変数
  2. あらかじめ用意してある変数(次節で説明)

2.1 変数の宣言

  宣言方法 備考
1 var 変数名:データ型; var a:int;
推奨
2 var 変数名:データ型=値; var a:int=0; 推奨
3 var 変数名; var a;
 
4 var 変数名=値; var a=0;  

最初に宣言してしまえば、後は宣言せずに使える。
例 
var a:int;
a=10;
a=a+100;

2.2 変数名

変数名の命名法 アルファベット、数字、_ で名前付ける。
先頭の文字は、アルファベットか _ 。
予約語は使えない。
OK ohayo_konbanha
OK abc123
× 123abc
× if
× for
OK if_for
変数名の大文字小文字 大文字小文字は区別される。 abcとABCとaBcは別のもの。

 

2.3 データ型(どんな値が入るかを指示)

基本的データ型

データ型 意味 使用例 備考
int 整数 var a:int=123; 値の範囲は、-2,147,483,648〜 2,147,483,647
String 文字列 var a:String="おはよう"; ダブルクォウテーション"で囲む。'でも可。
Boolean 論理値 var a:Boolean=true; trueとfalseの2つの値しかない
Number 数字 var a:Number=38.5697; 最大 53 ビット

その他すべてのクラスもデータ型

データ型 意味 使用例 備考
Array 配列 var a:Array=new Array();  
Date 日付 var a:Date=new Date();  
Object オブジェクト var a:Object=new Object();  
XML XML var a:XML=new XML(xmlテキスト);  
MovieClip ムービークリップ var a:MovieClip=new MovieClip(); 左記のようにスクリプトで生成も可
Event イベント function a(event:Event){処理} 左記のように主に関数の引数で活躍
MouseEvent マウスイベント function a(event:MouseEvent){処理} 左記のように主に関数の引数で活躍
TextField テキストフィールド var a:TextField=new TextField(); 左記のようにスクリプトで生成も可
などなど
その他一杯で
書ききれない
    すべてのクラス(adobe)

注)結局、変数は、どれかのクラスのインスタンスである。

 

演習1 文字列が入る変数を宣言し、それに値をいれて、trace文で表示してみよう。

演習2 整数が入る変数を宣言し、それに値をいれて、trace文で表示してみよう。

 

2.4 演算子

値をいれよう 代入演算子

意味 備考
a=b aにbの値を代入  
a+=b aにa+bの値を代入 a=a+bと同じ
a-=b aにa-bの値を代入 a=a-bと同じ
a*=b aにa*bの値を代入 a=a*bと同じ
a/=b aにa/bの値を代入 a=a/bと同じ
a%=b aにa/bの剰余(あまり)を代入 a=a%と同じ

足し算掛け算をしよう 算術演算子

意味 備考
a+b aとbをたす  
a-b aからbを引く  
a*b aとbをかける  
a/b aをbで割る bが0でないことを確認
a%b aをbで割ったあまり bが0でないことを確認

省略形でかこう 算術演算子その2

意味 備考
a++ aの値を1増やす a=a+1
a-- aの値を1減らす a=a-1;

if文で活躍するよ 比較演算子

意味
a==b aとbの値が等しい時、true
a!=b aとbの値が等しくない時、true
a>b aの値がbの値よりも大きい時、true
a>=b aの値がbの値以上の時、true
a<b aの値がbの値よりも小さい時、true
a<=b aの値がbの値以下の時、true

if文で活躍するよ 論理演算子

意味
aaa && bbb aaaとbbbが両方trueなら、true
aaa || bbb aaaとbbbのどちらかがtrueなら、true
 !aaa aaaがfalseなら、true

文字と文字をくっつけよう 文字列連結演算子

+ を使うことで
文字列を連結できる
var a:String;
a = "おはよう。" + "こんばんは。";

 

最初にやってもらいたいのには( )をつけよう 演算子の優先順位

1 ( )
2 * / %
3 + -
4 <  <=  >  >=
5 ==  !=
6 &&
7 ||
8 ?
9 =

演習1 ステージ上をクリックした回数をtrace文で表示してみよう。

演習2 

  1. 文字列変数"おはよう"をつくり
  2. ムービークリップオブジェクトを2つつくり
  3. 右のオブジェクトを押したら、右さん+文字列変数、をtrace文で表示せよ
  4. 左のオブジェクトを押したら、左さん+文字列変数、をtrace文で表示せよ
  5. 文字列変数を"こんにちは"と変えて、3と4を実行せよ。

 

2.5 変数の有効範囲 どこでも使えるの?

有効範囲 説明 他のオブジェクトで
使用する場合
どこでも使える
タイムライン変数
関数やif文for文の{ }の外に宣言した変数。
他のタイムラインで使う場合は、変数を記述したタイムラインの
オブジェクト(例maru_mcなど)を指定して使用。
b=maru_mc.a+1;
外では使えない
ローカル変数
関数やif文for文の{ }の中に宣言した変数。
{ }の中でのみ有効な一時的変数。
使えない

注)タイムライン変数は外部から参照できるので、変数を記述したタイムラインのオブジェクトの属性である。

演習1 

  1. シンボルのタイムラインに文字列変数を作り、値を入れておく。
  2. トップのタイムラインからそれをtrace文で表示してみよ。