InstanceType, ReturnType 这种含有Type单词的,类型都用typeof 获取。

    1. Because an interface more closely maps how JavaScript objects work by being open to extension, we recommend using an interface over a type alias when possible.
    2. On the other hand, if you cant express some shape with an interface and you need to use a union or tuple type, type aliases are usually the way to go.

    通常情况下,推荐使用interface。如果有联合类型或者元组创造inerface,推荐使用type。