2013/10/22

AS3: 型変換 キャスト方法について

ActionScript3:: AS3では型変換(キャスト)する方法がいくつかあります。
簡単なのは型名で括弧で囲う方法。例. String(12345)、int("5678")

それから、「as」演算子を使う方法 。例. "12345" as int, 56789 as String

両方ともキャストする方法ですが、「as」演算子を使う方法と型名+()でキャストする方法は結果が違うので、注意が必要です。

型名+()キャストでは、型によって違う値を返します。(例外が返ることも)
「as」キャストでは、型変換出来ない場合はnullを返します。


 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
trace(String(12345)); // 12345
trace(int("56789")); // 56789
   
var string:String = "Hello";
   
trace(Array(string)); // Hello
trace(Boolean(string)); // true
trace(int(string)); // 0
trace(Number(string)); // Nan
trace(Object(string)); // Hello
   
trace("12345" as int); // null
trace(56789 as String); // null
   
trace(string as Array);  // null
trace(string as Boolean); // null
trace(string as int);  // null
trace(string as Number); // null
trace(string as Object); // Hello


http://d.hatena.ne.jp/ActionScript/20090427/as3_as_operator

0 件のコメント:

コメントを投稿