I have an array called messages
. When I send a message I am sender
, when I receive it I am receiver
. My ‘id’ is ‘6003123’. What’s the easiest way to get messages that are sender
, receiver
and related to my id
? Is the following way and the use of the filter
method appropriate?
const messages = [
{
_id: 610be2c,
msg: { text: 'sdsdsdsdsd' },
sender: '608ffae',
receiver: '6003123' **//myId**
},
{
_id: 610be2d,
msg: { text: 'sdsdsdsdsdsdsdsdsdsdsd' },
sender: '6003123', **//myId**
receiver: '608ffae'
},
{
_id: 610be2dert,
msg: { text: 'sdsdsdsdsdsdsdsdsdsdsd' },
sender: '6003123', **//myId**
receiver: '608ffae'
},
{
_id: 610be2dertrtyu,
msg: { text: 'sdsdsdffgghghgh' },
sender: '3456',
receiver: '098765'
},
{
_id: 610be2dertrtyu,
msg: { text: 'sdsdsdffgghghgh' },
sender: '098765'
receiver: '3456'
}
]
const myId = '6003123';
let messagesArray = messages.filter(message => message.sender === myId && message.receiver === myId) || message.sender === myId || message.receiver === myId));