忙しい人のための ActionScript まとめ【初級編】
初心者というより、ほんとに急いでる人用。
急にActionScriptさわり始めた人用。
というより俺用メモ。
変数について
ポイントは var
と :(コロン)
のあとに続く 型宣言
var 変数名:型; var testVar:String;
var はきっとVariable(変数)の略です、たぶん。
定数
class Hoge { /** ほげ定数 */ public static const HOGE_TEISUU:String = "HOGE"; }
ポイントはconst
、変数と違い定数宣言はconstってやつを使う。
で、定数は多くなってくると管理が大変なので定数クラスにまとめってるはず。
コロンについて
class TestClass { var testVar:String = "test"; public function testFunc (aParam:String) { trace(aParam); } public function testGetFunc ():String { return testVar; } }
コロンに続くのは決まって型。
基本的な型だったり、Objectだったり、Nullだったり。
この点は読みやすいかなって思ったりしてる。
ポイントというか、なんの型だろう?だとか
戻り値はなんだろう?の場合は処理をさかのぼってコロンを見ればよし。
関数
関数にでてくるコロン
class TestClass { public function testFunc (aParam:String,bParam:Object = null, cParam:Object) { trace(aParam); } //戻り値はString型 public function testGetFunc ():String { return testVar; } }
上のコードで出てくるtrace
は確か出力用のコマンド・・たぶん。
関数のオーバーロード
ActionScriptでは関数のオーバーロードはできないらしい。
何かいろいろやる方法はあるらしいけど、公式ではサポートしていないらしい・・
正直わからん
//戻り値はBoolean型 public function testGetFunc (aParam:String, bParam:String=null, cParam:String=null):Boolean { if (aParam != null) { 処理 } if (bParam != null) { 処理 } if (cParam != null) { 処理 } }
ActionScriptではメソッドの引数に値が設定されていた場合は必須引数ではない。
上記のメソッドの場合は
aParam
は必須で、続くbParam
とcParam
は無くてもいいらしい。
つまりこんな?
/** その1 */ public function testGetFunc (aParam:String):Boolean { if (aParam != null) { 処理 } } /** その2 */ public function testGetFunc (aParam:String, bParam:String):Boolean { if (aParam != null) { 処理 } if (bParam != null) { 処理 } } /** その3 */ public function testGetFunc (aParam:String bParam:String, cParam:String):Boolean { if (aParam != null) { 処理 } if (bParam != null) { 処理 } if (cParam != null) { 処理 } }
ひとつのメソッドにまとめられる書き方になっている・・
間の引数を飛ばしたい場合はfunc( paramA, null, paramC)
という具合に引数を設定すれば良い。
キャスト
比較的わかりやすい。
var strNum:String = "1"; var intNum:int = int(testNum);
is句とas句
両方ともデータ型のチェックで使用される
戻り値が違うとこに注意
- is → instanceof。真ならtrue,偽ならfalse。
- as → 真なら値を設定、偽ならnullを返す。
var myClss:MyClass = new MyClass(); trace(myClss is MyClass); // trueを返す trace(myClass as Number); //nullを返す
とりあえずここまで。
そのうちまた追記します