久々にFlashを触ったのでメモ

April 22nd, 2011

久しぶりにFlashを触ったので、自分で書いたコードが意味不明。リハビリがてらに、コードを書き直す事に。

ActionScript3.0にも連想配列が使えるので、忘れないようにメモメモ。


なんか、AS3.0の連想配列について調べてみたら、Arrayクラスではなく、Objectクラスで記述するように書いてある。

ただ、Arrayクラスでも動いたので、2011年現在はどちらでも扱える...?

var sites:Array = new Array("Google", "Yahoo!");
var url:String;

var arr:Array = new Array();
var obj:Object = new Object();
for each (var value in sites) {
    switch (value) {
        case "Google" :
            url = "http://www.google.co.jp/";
            break;
        case "Yahoo!" :
            url = "http://www.yahoo.co.jp/";
            break;
    }
    arr[value] = url;
    obj[value] = url;
}

trace("Array:");
for (var key in arr) {
    trace(key + " - " + arr[key]);
}

trace("Object:");
for (var key2 in obj) {
    trace(key2 + " - " + arr[key2]);
}

出力結果

Array:
Google - http://www.google.co.jp/
Yahoo! - http://www.yahoo.co.jp/
Object:
Google - http://www.google.co.jp/
Yahoo! - http://www.yahoo.co.jp/

Array()でもObject()でも動くようです。

April 22nd, 2011