データ型を調べたい
データ型をチェックするにはtypeof,is,asなどを使います。
typeof演算子
typeof演算子はデータ型を表す文字列を返します。
| データ型 | 結果 |
|---|---|
| Array | “object” |
| Boolean | “boolean” |
| Function | “function” |
| int | “number” |
| Number | “number” |
| Object | “object” |
| String | “string” |
| uint | “number” |
| XML | “xml” |
| XMLList | “xml” |
| ユーザー定義クラスの インスタンス |
“object” |
var num:int = 14;
var Valentine:Date = new Date();
var str:String = new String("choco");
var flag:Boolean = true;
var girl = new MovieClip();
trace(typeof num); // number
trace(typeof Valentine); // object
trace(typeof str); // string
trace(typeof flag); // boolean
trace(typeof girl); // object
is演算子
is演算子は特定のデータ型が一致すればtrue、そうでなければfalseを返します。
また、クラスの階層構造をチェックし、そのデータが継承する祖先のクラスを指定した場合にもtrueを返します。
var mySp:Sprite = new Sprite(); trace(mySp is Sprite); // true trace(mySp is DisplayObject); // true trace(mySp is Object); // true
as演算子
A as Bのように記述します。AがBで指定したデータ型に一致した場合その値を返し、一致しないときはnullを返します。
var mList:Array = ["January", "February", "March"]; trace(mList as Array); // one,two,three trace(mList as Number); // null trace(mList[2] as int); // null
