Reputation: 1661
I have an array of messages like
oldMessages = [ {id:1,message:'message_A'} , {id:2,message:'message_B'} ]
and another array as
newMessages = [ {id:1,message:'message_A'} , {id:2,message:'message_B'} , {id:3,message:'message_C'} ]
How do I get only the part {id:3,message:'message_c'}
by comparing oldMessages
with newMessages
?
I must compare them based on their id only.
Upvotes: 0
Views: 65
Reputation: 73906
You can easily do this using array .find()
method like:
const oldMessages = [ {id:1,message:'message_A'} , {id:2,message:'message_B'} ]
const newMessages = [ {id:1,message:'message_A'},{id:2,message:'message_B'} , {id:3,message:'message_C'} ]
const data = newMessages.find(r=> !oldMessages.map(x=>x.id).includes(r.id))
console.log( data )
Upvotes: 1