我有一个对象数组,其中的目标是获取数组中具有相同接收器的所有对象。
这是虚拟数据:
Array [
Object {
"data": Object {
"expoPushToken": "ExponentPushToken[O81B9tHI4D1Ivdsds3W048Qg]",
"receiver": "BgvUhZ9YKhY0gVkdWGJ46T3ZZ1i1",
"sender": "BgvUhZ9YKhY0gVkdWGJ46T3ZZ1i1",
},
},
Object {
"data": Object {
"expoPushToken": "ExponentPushToken[O81B9tHI4D1IvDsaa3W048Qg]",
"receiver": "BgvUhZ9YKhY0gVsdWGJ46T3ZZ1i1",
"sender": "UWkvBoMjzeNas8Dgs7Y2mL5Lg4Vy1",
},
}
]
我的代码:
const userSenderData = notificationsData.find(data => data.data.receiver === userUid);
出于某种奇怪的原因,
userSenderData
仅返回具有相同接收器的对象之一而不是 2,因为 2 具有相同的接收器 ID。
返回的对象:
Object {
"data": Object {
"expoPushToken": "ExponentPushToken[O81B9tHI4D1Ivdsds3W048Qg]",
"receiver": "BgvUhZ9YKhY0gVkdWGJ46T3ZZ1i1",
"sender": "BgvUhZ9YKhY0gVkdWGJ46T3ZZ1i1",
},
},
代替:
Object {
"data": Object {
"expoPushToken": "ExponentPushToken[O81B9tHI4D1Ivdsds3W048Qg]",
"receiver": "BgvUhZ9YKhY0gVkdWGJ46T3ZZ1i1",
"sender": "BgvUhZ9YKhY0gVkdWGJ46T3ZZ1i1",
},
},
Object {
"data": Object {
"expoPushToken": "ExponentPushToken[O81B9tHI4D1IvDsaa3W048Qg]",
"receiver": "BgvUhZ9YKhY0gVsdWGJ46T3ZZ1i1",
"sender": "UWkvBoMjzeNas8Dgs7Y2mL5Lg4Vy1",
},
}