微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

检查数组是否包含 TypeScript 中特定类的实例

如何解决检查数组是否包含 TypeScript 中特定类的实例

我来自 .net 背景并且不熟悉打字稿。我有一个数组,其中包含来自实现公共接口的不同类的对象。我想检查数组是否包含来自特定类的对象。我尝试使用 'includes' 和 'instanceof' 的组合,但没有成功。提前致谢。

假设类“C1”、“C2”和“C3”实现了接口“Int1”。 数组'array01'可以保存实现接口'Int1'的类的对象。

private static array01: Int1[] = [];

if(array01.includes(instanceof C1)) ??? //Want to check if 'array01' contains an object of class 'C1'.

解决方法

试试

private static array01: Int1[] = [];

if(array01.find(arr => arr instanceof C1)) {}

对于数组过滤器

private static array01: Int1[] = [];

if(array01.filter(arr => arr instanceof C1).length) {}
,

instanceof 是一个运算符,您不能将其作为要搜索的值传递给 includes

您很可能正在寻找将 the .some() method 与回调一起使用:

if (array01.some(obj => obj instanceof C1)) …

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。