Flash制作講座フラッシュ制作講習

FLASH制作からActionScriptによるFlashコンテンツ制作のためのフラッシュ制作講座

AS3.0 その他の演算子

AS3.0 その他の演算子

ActionScriptの数値演算子や論理演算子なら理解しやすいのですが、その他の演算子はきちんと理解していないと文法を読み誤ることもあるかもしません。

あらためてActionScript3.0のその他の演算子について理解を深めておきましょう。
むしろその他の演算子のほうが重要で、ActionScriptソースコードを理解するには必須のルールになります。


■ + (文字列連結)
文字列を連結。数値演算子としても使用される。

trace("abc" + "def"); //出力値 = "abcdef"



■ ?: (条件演算)
3つのオペランド(被演算子)と取得する三項演算子。第1オペランドは条件式、第2オペランドは条件が成立したとき返す値、第3オペランドは条件成立しなかったときに返される値。

var _x:Number = 3;
trace 値の部分にはクラスなども指定可能。



■ () (カッコ)
演算の実行順番を指定したら、複数式を順番に評価することも可能。より内側にある括弧ほど優先して処理。

trace((_x+=1,_x-=1)); //出力値 = 0



■ , (カンマ)
複数の演算式w順番に評価します。

trace((_x += 1,_x += 2)); 出力値 = 3



■ . (ドット)
ターゲットパスの階層やプロパティ、メソッド指定に使用

trace(xml.data.title); // 出力値 = 読み込んだxmlデータのtitleノードの値を表示します。



■ [] (配列アクセス)
配列要素を表すほか、オブジェクト名指定にも使用されます

this["MC"].gotoAndStop(18); // タイムラインと同じ位置にあるMCムービーの18フレーム目でストップさせます。



■ new 
クラスインスタンス(オブジェクト)を作成して、オブジェクトを返します

var nowDate = new Date
trace(nowDate); //出力値 = 現在の月日時"Fri Oct 2 01:11:29 GMT+0900 2009"


■ delete 
変数またはオブジェクト参照を削除します。正常に削除できた場合は"true"が返り、そうでない場合は"false"が帰ります。deleteが有効なのはグローバル変数のみ、動的に生成されたオブジェクトのみになります。


■ instanceof 
オブジェクトが指定したクラスのインスタンス(データ型)かどうかを調べます。クラス指定の型であればtrue、そうでなければfalseを返します。

var MC:Number;
trace(MC instanceof Number);//出力値 = true
trace(MC instanceof MovieClip);//出力値 = false



■ typeof 
オブジェクトのデータ型を文字列で返します。

trace(typeof(3">*1;//出力値 = number
trace(typeof("M"));//出力値 = string



■ void (空・無)
void 演算子は式を評価した後に値を破棄してundefined を返します。undefinedとは値はおろか、データ型もないも指定がないまったく判別できないとう値です。
functionName():void {}は関数が値を返さないようにするため。

trace(void(0));// 出力値 = undefined

*1:_x % 3 == 0) ? "OK":"NG"); //出力値 = _xが3で割り切れる場合は"OK"が返り、それ以外は"False"が返される。 値の部分にはクラスなども指定可能。 ■ () (カッコ) 演算の実行順番を指定したら、複数式を順番に評価することも可能。より内側にある括弧ほど優先して処理。 trace((_x+=1,_x-=1)); //出力値 = 0 ■ , (カンマ) 複数の演算式w順番に評価します。 trace((_x += 1,_x += 2)); 出力値 = 3 ■ . (ドット) ターゲットパスの階層やプロパティ、メソッド指定に使用 trace(xml.data.title); // 出力値 = 読み込んだxmlデータのtitleノードの値を表示します。 ■ [] (配列アクセス) 配列要素を表すほか、オブジェクト名指定にも使用されます this["MC"].gotoAndStop(18); // タイムラインと同じ位置にあるMCムービーの18フレーム目でストップさせます。 ■ new  クラスインスタンス(オブジェクト)を作成して、オブジェクトを返します var nowDate = new Date trace(nowDate); //出力値 = 現在の月日時"Fri Oct 2 01:11:29 GMT+0900 2009" ■ delete  変数またはオブジェクト参照を削除します。正常に削除できた場合は"true"が返り、そうでない場合は"false"が帰ります。deleteが有効なのはグローバル変数のみ、動的に生成されたオブジェクトのみになります。 ■ instanceof  オブジェクトが指定したクラスのインスタンス(データ型)かどうかを調べます。クラス指定の型であればtrue、そうでなければfalseを返します。 var MC:Number; trace(MC instanceof Number);//出力値 = true trace(MC instanceof MovieClip);//出力値 = false ■ typeof  オブジェクトのデータ型を文字列で返します。 trace(typeof(3