打字稿:使用父对象列表中的子对象

时间:2018-06-07 10:27:15

标签: arrays typescript

TypeScript相当新。 我有一系列动物,想要单独使用它们,但我无法弄清楚如何做到这一点。

所以我定义了我的数组:

animalList : Animal[];

对于那个数组,我添加了来自Animal的不同Child类(Fish,Cat,...)的对象。 这些子类有一些共享属性和方法,我使用它们没有问题,我可以检查instanceof它是什么类型的Child,但是我在使用属性和调用特定Child类的方法时遇到了麻烦。 示例我知道第三个条目是因为instanceof而导致Fish,但是无法调用它的方法'blub()'。

animalList[2].blub()

如何访问Child的全部功能?

1 个答案:

答案 0 :(得分:0)

将数组对象放入临时变量,然后进行类型检查

let f = animalList[2]
if(f instanceof Fish) {
   f.blub()
}