let a = {
'before': 'small',
'after': 'large',
'type': 'size'
};
let b = [
{ /*Esse objeto possui as mesmas propriedades com
respectivos valores iguais ao objeto a, só que em ordem diferente*/
'after': 'large',
'before': 'small',
'type': 'size'
},
{ /*Esse objeto possui as mesmas propriedades porém com
respectivos valores diferentes ao objeto a*/
'before': 'large',
'after': 'small',
'type': 'size'
}
];
function findDiff(arr,obj){
let diff=[]
arr.forEach((Obj)=>{
if(JSON.stringify(Obj)!=JSON.stringify(obj))diff.push(Obj)
})
return diff
}
let diferentes=findDiff(b,a)
console.log("Resultado deveria ser 1 mas é %d", diferentes.length)
bGV0IGEgPSB7CiAgJ2JlZm9yZSc6ICdzbWFsbCcsCiAgJ2FmdGVyJzogJ2xhcmdlJywKICAndHlwZSc6ICdzaXplJwp9OwogCmxldCBiID0gWwogIHsgICAgICAgICAgICAgICAgICAgICAvKkVzc2Ugb2JqZXRvIHBvc3N1aSBhcyBtZXNtYXMgcHJvcHJpZWRhZGVzIGNvbSAKICAgICAgICAgICAgICAgICAgICAgICAgICByZXNwZWN0aXZvcyB2YWxvcmVzIGlndWFpcyBhbyBvYmpldG8gYSwgc8OzIHF1ZSBlbSBvcmRlbSBkaWZlcmVudGUqLwogICAgJ2FmdGVyJzogJ2xhcmdlJywKICAgICdiZWZvcmUnOiAnc21hbGwnLAogICAgJ3R5cGUnOiAnc2l6ZScKICB9LAogIHsgICAgICAgICAgICAgICAgICAgIC8qRXNzZSBvYmpldG8gcG9zc3VpIGFzIG1lc21hcyBwcm9wcmllZGFkZXMgcG9yw6ltIGNvbQogICAgICAgICAgICAgICAgICAgICAgICAgcmVzcGVjdGl2b3MgdmFsb3JlcyBkaWZlcmVudGVzIGFvIG9iamV0byBhKi8KICAgICdiZWZvcmUnOiAnbGFyZ2UnLAogICAgJ2FmdGVyJzogJ3NtYWxsJywKICAgICd0eXBlJzogJ3NpemUnCiAgfQpdOwogCmZ1bmN0aW9uIGZpbmREaWZmKGFycixvYmopewogICBsZXQgZGlmZj1bXQogICBhcnIuZm9yRWFjaCgoT2JqKT0+ewogICAgIGlmKEpTT04uc3RyaW5naWZ5KE9iaikhPUpTT04uc3RyaW5naWZ5KG9iaikpZGlmZi5wdXNoKE9iaikKICAgfSkKcmV0dXJuIGRpZmYKfQogCmxldCBkaWZlcmVudGVzPWZpbmREaWZmKGIsYSkKY29uc29sZS5sb2coIlJlc3VsdGFkbyBkZXZlcmlhIHNlciAxIG1hcyDDqSAlZCIsIGRpZmVyZW50ZXMubGVuZ3RoKQ==