如何使用javascript过滤值?
我已附上图片: 从上图中,我必须在接收方id 1、接收方id 2、发送方id的任意位置过滤这些数据“156158223”和“4”,但要同时过滤 我想删除包含“3”、“1”等的其他数据 我想要一个代码最少、循环最少的解决方案,因为我得到的记录太多了 我可以像wise一样检查条件(receiver\u id\u 1==“156158223”和“sender\u id”==“4”)或(receiver\u id\u 2==“156158223”和“sender\u id”==“4”)或(receiver\u id\u 2==“156158223”和“receiver\u id\u 1”==“4”) 但是我不想在这里写几个条件如何使用javascript过滤值?,javascript,Javascript,我已附上图片: 从上图中,我必须在接收方id 1、接收方id 2、发送方id的任意位置过滤这些数据“156158223”和“4”,但要同时过滤 我想删除包含“3”、“1”等的其他数据 我想要一个代码最少、循环最少的解决方案,因为我得到的记录太多了 我可以像wise一样检查条件(receiver\u id\u 1==“156158223”和“sender\u id”==“4”)或(receiver\u id\u 2==“156158223”和“sender\u id”==“4”)或(receiv
请任何人帮助我解决此问题。如果您可以使用es6的功能,请尝试以下操作(我们假设您的数组是
项
):
请注意,它不会更改来源
项目
,而只会更改筛选的\u项目
是您的最终筛选项目。请检查此处,谢谢您的回复。但我希望“156158223”可以是“”“接收方id”1、接收方id“”2、发送方id“”,而“4”可以是相同的“”“接收方id”1、接收方id“”2、发送方id“”“。您的结果将获取某个固定位置的记录。如果接收者id 2有156158223,发送者id有4个这样的情况,它也应该能工作,ShivaniPatel,我想我得到了你想要的结果。我编辑了这篇文章。检查是否正确,并让我知道是否正确。我对您的解决方案做了一点更改,我得到了最终结果。谢谢这是我的荣幸
filtered_items = items.filter(item =>
[1565158223,4].indexOf(parseInt(item['receiver_id_1'])) > -1 &&
[1565158223, 4].indexOf(parseInt(item['receiver_id_2'])) > -1 &&
[1565158223, 4].indexOf(parseInt(item['sender_id'])) > -1
)