switchの挙動

switchの挙動が悩ましかったのでメモを。


var data:Array = new Array;
data["type"] = "a";
switch( data["type"] ){
case 'a':
trace("A");
break;
case 'b':
trace("B");
break;
}

switchに対して、data[“type”]という様に、配列を渡すと、なぜかきちんと評価をしてくれない。

もちろん、以下の様に書くと動作する。


var data:Array = new Array;
data["type"] = "a";
var type:String = data["type"];
switch( type ){
case 'a':
trace("A");
break;
case 'b':
trace("B");
break;
}

なぜ、なのだろうか?

コメントを残す

メールアドレスが公開されることはありません。

CAPTCHA