Closed. This question needs debugging details。它当前不接受答案。
想改善这个问题吗? Update the question,所以它是on-topic,用于堆栈溢出。
9个月前关闭。
我已附上图片:
从上面的图像中,我必须在receive_id_1,receiver_id_2,sender_id的任何位置(但一起)过滤此类数据“ 1565158223”和“ 4”。
我想删除其他包含“ 3”,“ 1”等的数据。
我想要一个具有最少代码和最少循环的解决方案,因为我得到的记录太多。
我可以检查条件,例如(receiver_id_1 ==“ 1565158223” AND“ sender_id” ==“ 4”)OR(receiver_id_2 ==“ 1565158223” AND“ sender_id” ==“ 4”)OR(receiver_id_2 ==“ 1565158223” AND “ receiver_id_1” ==“ 4”)一样明智。
但是我不想在这里写下几个条件。
请任何人帮助我解决它。
请注意,它不会更改原点
想改善这个问题吗? Update the question,所以它是on-topic,用于堆栈溢出。
9个月前关闭。
我已附上图片:
从上面的图像中,我必须在receive_id_1,receiver_id_2,sender_id的任何位置(但一起)过滤此类数据“ 1565158223”和“ 4”。
我想删除其他包含“ 3”,“ 1”等的数据。
我想要一个具有最少代码和最少循环的解决方案,因为我得到的记录太多。
我可以检查条件,例如(receiver_id_1 ==“ 1565158223” AND“ sender_id” ==“ 4”)OR(receiver_id_2 ==“ 1565158223” AND“ sender_id” ==“ 4”)OR(receiver_id_2 ==“ 1565158223” AND “ receiver_id_1” ==“ 4”)一样明智。
但是我不想在这里写下几个条件。
请任何人帮助我解决它。
最佳答案
如果可以使用es6的功能,请尝试以下操作(我们假设您的数组为items
):
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
)
请注意,它不会更改原点
items
,只有filtered_items
是您最终过滤的项目。10-06 15:39