Actionscript, эквивалентный PHP __get () и __set () - PullRequest
1 голос
/ 03 января 2011

Есть ли ActionScript, эквивалентный магическим методам PHP __get() и __set()?Я хочу иметь возможность переопределить поведение получения / установки переменных-членов.

Ответы [ 2 ]

1 голос
/ 08 января 2011

Нашли.

Расширение класса Proxy позволяет решить эту проблему.

1 голос
/ 03 января 2011

К сожалению, такого нет.

Все, что вы можете сделать, это проверить наличие определенного свойства, используя

myObject.hasOwnProperty (name) 

на простых объектах или какой-либо вариант descriptionType () для классанапример,

describeType(myObject).accessor

для получения XMLList всех методов доступа или

describeType(myObject).variable

для получения XMLList всех переменных.

descriptionType (), однако, это довольно дорого с точки зрения производительности, поэтому стоит иметь какую-то хэш-карту типов, чтобы хранить списки для каждого типа и выполнять поиск для типов, которые уже были описаны однажды.

Вы также можете использовать try/ catch блокирует части, где могут быть доступны неопределенные свойства, но это также «съедает» много производительности, если выдается много ошибок.

...