ActionScript 3.0'da ilişkilendirilebilir dizi oluşturmanın iki yolu vardır. Birinci yol, Object örneği kullanılmasıdır. Object örneği kullanarak, bir nesne değişmeziyle dizinizi başlatabilirsiniz. Object sınıfının
genel nesne
olarak da adlandırılan bir örneği, ilişkilendirilebilir bir diziyle aynı işleve sahiptir. Genel nesnenin özellik adlarının her biri, saklanan değere erişilmesini sağlayan bir anahtar görevi görür.
Aşağıdaki örnek iki anahtar ve değer çiftiyle diziyi başlatmak için bir nesne değişmezi kullanan
monitorInfo
adında ilişkilendirilebilir bir dizi oluşturur:
var monitorInfo:Object = {type:"Flat Panel", resolution:"1600 x 1200"};
trace(monitorInfo["type"], monitorInfo["resolution"]);
// output: Flat Panel 1600 x 1200
Bildirim zamanında diziyi başlatmanız gerekmiyorsa, diziyi oluşturmak için Object yapıcısını şu şekilde kullanabilirsiniz:
var monitorInfo:Object = new Object();
Bir nesne değişmezi veya Object sınıfı yapıcısı kullanılarak dizi oluşturulduktan sonra, dizi erişimi (
[]
) operatörünü veya nokta operatörünü (
.
) kullanarak diziye yeni değerler ekleyebilirsiniz. Aşağıdaki örnek
monitorArray
öğesine iki yeni değer ekler:
monitorInfo["aspect ratio"] = "16:10"; // bad form, do not use spaces
monitorInfo.colors = "16.7 million";
trace(monitorInfo["aspect ratio"], monitorInfo.colors);
// output: 16:10 16.7 million
aspect ratio
adındaki anahtarın bir boşluk karakteri içerdiğini unutmayın. Bu, dizi erişimi (
[]
) operatörüyle mümkün olsa da, nokta operatörüyle denendiğinde hataya yol açar. Anahtar adlarınızda boşluk kullanılması önerilmez.
İlişkilendirilebilir bir dizi oluşturmanın ikinci yolu, Array yapıcısı (veya herhangi bir dinamik sınıf yapıcısı) kullanıldıktan sonra diziye anahtar ve değer çiftleri eklemek için dizi erişimi (
[]
) operatörünün veya nokta operatörünün (
.
) kullanılmasıdır. İlişkilendirilebilir dizinizin Array türünde olmasını bildirirseniz, diziyi başlatmak için bir nesne değişmezi kullanamazsınız. Aşağıdaki örnek, Array yapıcısını kullanarak
monitorInfo
adında ilişkilendirilebilir bir dizi oluşturur ve
type
adında bir anahtar ile
resolution
adında bir anahtarı değerleriyle birlikte ekler:
var monitorInfo:Array = new Array();
monitorInfo["type"] = "Flat Panel";
monitorInfo["resolution"] = "1600 x 1200";
trace(monitorInfo["type"], monitorInfo["resolution"]);
// output: Flat Panel 1600 x 1200
İlişkilendirilebilir bir dizi oluşturmak için Array yapıcısının kullanılması herhangi bir avantaj sağlamaz. Array yapıcısını veya Array veri türünü kullanıyor olsanız da, ilişkilendirilebilir dizilerle
Array.length
özelliğini veya Array sınıfı yöntemlerinden herhangi birini kullanamazsınız. Dizinlenmiş diziler oluşturmanın en iyi yolu Array yapıcısının kullanılmasıdır.