Что такое эквивалент «hasOwnProperty ()» для интерфейса? - PullRequest
6 голосов
/ 04 марта 2011

Что такое эквивалент "hasOwnProperty ()" для интерфейса?

Я нашел эту ошибку в Adobe: https://bugs.adobe.com/jira/browse/FB-27683

Есть ли обходной путь, кроме оператора try..catch?

Ответы [ 2 ]

4 голосов
/ 04 марта 2011

Рассматривали ли вы это?

if("foo" in bar){ ...

, где "foo" - это имя свойства, а bar - ссылка на объект в качестве интерфейса?

Вот оно в действии в реальномсценарий мира:

import flash.events.IEventDispatcher;
import flash.events.EventDispatcher;

var i:IEventDispatcher = new EventDispatcher();
if("dispatchEvent" in i){
    trace(" I have dispatchEvent");
}
2 голосов
/ 05 марта 2011

Другой ответ лучше, но вы также можете использовать

i['hasOwnProperty']('dispatchEvent')
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...