{} オブジェクト初期化演算子

object = { name1 : value1 , name2 : value2 ,... nameN : valueN }
{expression1; [...expressionN]}

新しいオブジェクトを作成し、指定された namevalue プロパティペアで初期化します。この演算子を使用することは、new Object シンタックスを使用して代入演算子でプロパティペアを設定するのと同じです。新しく作成されるオブジェクトのプロトタイプとして、汎用の Object オブジェクトがあります。

また、フローを制御するステートメント (for、while、if、else、switch) や関数で、ひとかたまりのコードブロックであることを示すときにも、この演算子が使用されます。

使用できるバージョン : ActionScript 1.0、Flash Lite 2.0

オペランド

object : Object - 作成するオブジェクト。name1,2,...N プロパティの名前。value1,2,...Nname プロパティに対応する名前。

戻り値

Object -

シンタックス 1 : Object オブジェクト。

シンタックス 2 : なし。ただし、関数で明示的に return ステートメントが指定されている場合は、その関数で戻り値のタイプが指定されます。

次のコードの 1 行目はオブジェクト初期化 ({}) 演算子を使用して空のオブジェクトを作成し、2 行目はコンストラクタ関数を使用して新しいオブジェクトを作成します。

var object: Object = {}; 
var object: Object = new Object(); 

次の例では、オブジェクト account を作成し、name、address、city、state、zip、balance の各プロパティを対応する値で初期化します。

var account: Object = {name: "Macromedia, Inc.", address: "600 Townsend Street", city: "San Francisco", state: "California", zip: "94103", balance: "1000"}; 
for (i in account) { 
 trace("account." + i + " = " + account[i]); 
} 

次の例では、配列とオブジェクトの初期化演算子を相互にネストする方法を示します。

var person: Object = {name: "Gina Vechio", children: ["Ruby", "Chickie", "Puppa"]}; 

次の例では、前の例と同じ内容を、コンストラクタ関数で生成します。

var person: Object = new Object(); 
person.name = "Gina Vechio"; 
person.children = new Array(); 
person.children[0] = "Ruby"; 
person.children[1] = "Chickie"; 
person.children[2] = "Puppa"; 

上の例で示した ActionScript は、次のように記述することもできます。

var person: Object = new Object(); 
person.name = "Gina Vechio"; 
person.children = new Array("Ruby", "Chickie", "Puppa"); 

関連項目

Object