Flashドキュメンテーション |
|||
| ActionScript 2.0 リファレンスガイド > ActionScript 言語エレメント > グローバル関数 > eval 関数 | |||
eval(expression:Object) : Object eval(expression:String) : Object
変数、プロパティ、オブジェクト、ムービークリップに名前でアクセスします。expression が変数またはプロパティである場合は、変数またはプロパティの値が返されます。expression がオブジェクトまたはムービークリップである場合は、オブジェクトまたはムービークリップへの参照が返されます。expression に指定したエレメントが見つからない場合は、undefined が返されます。
Flash 4 では、配列をシミュレートするために eval() 関数を使用していましたが、Flash 5 以降では Array クラスを使用する必要があります。
Flash 4 では、eval() を使って変数の値またはインスタンスの名前を動的に設定および取得することもできます。ただし、同じことは配列アクセス演算子 ([]) を使用しても可能です。
Flash 5 以降では、eval() を使用して変数の値またはインスタンス名を動的に設定および取得することはできません。これは、等式の左辺に eval() を使用できないためです。たとえば、次のようなコードは、
eval ("var" + i) = "first";
次のコードに置き換える必要があります。
this["var"+i] = "first"
または、次のようにもできます。
set ("var" + i, "first");
使用できるバージョン : Flash Player 5、ActionScript 1.0
expression:Object - 取得する変数、プロパティ、オブジェクト、またはムービークリップの名前。このパラメータには、String またはオブジェクトインスタンスへの直接参照のいずれかを指定できます (引用符 (" ") は使用しなくてもかまいません)。
Object - オブジェクトまたはムービークリップへの参照、undefined、または値。
次の例では、eval() を使用して、動的に指定されるムービークリップのプロパティを設定します。この ActionScript は、square1_mc、square2_mc、square3_mc という 3 つのムービークリップの _rotation プロパティを設定します。
for (var i = 1; i <= 3; i++) {
setProperty(eval("square"+i+"_mc"), _rotation, 5);
}
次の ActionScript を使用することもできます。
for (var i = 1; i <= 3; i++) {
this["square"+i+"_mc"]._rotation = -5;
}
RSS フィード | このページに新しいコメントが追加された場合に、電子メールでの通知を希望する。 | コメントレポート
現在のページ: http://livedocs.adobe.com/flash/8_jp/main/00001726.html
Comments
Fumio Nonaka が Aug 5, 2006 の 7:15 AM に追加: