1

__get()PHPや__set()魔法のメソッドに相当するActionscriptはありますか?メンバー変数の取得/設定の動作をオーバーライドできるようにしたい。

4

2 に答える 2

1

それを見つけた。

Proxyクラスを拡張すると、この問題を解決できます。

于 2011-01-07T23:23:14.650 に答える
1

残念ながらそんなことはありません。

できることは、次のいずれかを使用して、特定のプロパティの存在を確認することだけです

myObject.hasOwnProperty (name) 

単純なオブジェクトまたは Class インスタンスのdescribeType()のいくつかのバリアント、たとえば

describeType(myObject).accessor

すべてのアクセサ メソッドの XMLList を取得する、または

describeType(myObject).variable

すべての変数の XMLList を取得します。

ただし、describeType() はパフォーマンスの点で非常にコストがかかるため、型ごとのリストを格納し、一度記述された型の検索を行うために、ある種の型ハッシュ マップを用意する必要があります。

未定義のプロパティにアクセスする可能性のある部分の周りに try/catch ブロックを使用することもできますが、多くのエラーがスローされると、パフォーマンスが大幅に低下します。

于 2011-01-03T00:17:35.443 に答える