我对 TypeScript 还很陌生。在开发 Next.js 项目时,我需要显示一个包含标题的分组项目列表。如果组中没有符合特定条件的项目,我不想显示标题或项目本身。我Array.any()
之前用 Kotlin 函数来表示“如果任何项目符合此条件,就将其包含在内”。我还没有找到直接在 TypeScript 中实现此操作的方法。在下面的示例中,Item
如果列表中的任何项目带有 ,我希望保留该列表someProp = null
。到目前为止,我发现的唯一方法是使用!Array.every()
双重否定“并非每个项目都包含 。someProp 不为空”这种做法非常复杂。有没有更好的方法来实现这一点?
{Object.entries(groupedListData!)
.filter(
([key, itemsGroupedByKey]) =>
!itemsGroupedByKey.every(
(item) => item.someProp !== null
)
)
...
我读完了所有数组函数,但似乎没有一个真正适合我。我还读过关于用我自己的函数扩展内置数组类的建议,any()
但这似乎有点太过分了。代码中除了少数几个地方我不需要用到这个。