Возможно, Adobe считала, что эта функция может возвращать другие значения в будущей версии Flash Player. Например, ECMAScript, стандарт, на котором основан ActionScript, исторически использовал Function
объекты с прототипами в качестве основы для объектов класса. Во время обсуждения новейших версий стандарта ECMAScript были предложены «заморозить» классы на основе функций во время выполнения, чтобы превратить их во что-то вроде объектов Class
времени компиляции. Что если бы вы могли также указать для них имя определения? Они на самом деле имеют тип Class
на данный момент, или они все еще или типа Function
? Наверное, позже, на мой взгляд. Обе ссылки 'Class' и 'Function' могут быть обобщены как Object
, так что возвращаемый тип имеет смысл в этом контексте.
Примечание. Это объяснение является чисто предположением, основанным на том, что я прочитал в вики спецификации ECMAScript и блогах различных членов комитета.