instanceof
Оператор требует левого операнда быть типа Любыми, типа объекта, или типа параметра типа, а правый операнда , чтобы иметь типа любых или подтип «Function» типа интерфейса. Результат всегда имеет тип логического примитива.
Так что вы могли бы использовать
mySprite instanceof Sprite;
Обратите внимание, что этот оператор также есть в ActionScript, но его там больше не следует использовать:
Оператор is, новый для ActionScript 3.0, позволяет проверить, является ли переменная или выражение членом данного типа данных. В предыдущих версиях ActionScript оператор instanceof предоставлял эту функцию, но в ActionScript 3.0 оператор instanceof не должен использоваться для проверки принадлежности к типу данных. Оператор is следует использовать вместо оператора instanceof для ручной проверки типа, поскольку выражение x instanceof y просто проверяет цепочку прототипов x на наличие y (а в ActionScript 3.0 цепочка прототипов не дает полной картины иерархия наследования).
TypeScript instanceof
разделяет те же проблемы. Поскольку это язык, который все еще находится в стадии разработки, я рекомендую вам высказать предложение о такой возможности.
Смотрите также:
Std.is(pet, Fish)
, которая работает с типами, интерфейсами и т. Д.