Web-Kevin opened this issue 3 years ago · 2 comments
该页”类型断言的限制“里相同的代码已经说了两者相互兼容,为何下面就不兼容了?
animal as cat ,cat as animal不代表两者互相兼容。只是animal兼容cat,所以animal可以断言为cat,cat可以断言为animal。而声明只能是cat声明为animal。 即动物不一定是猫,猫一定是动物。猫一定是动物这句话将猫转为动物,就是let tom: animal= cat; 而断言则多了一种情况,即我通过它的一系列行为(代码逻辑)断言这个动物一定是猫。
只有一样的东西才互相兼容