const checkObjectKeysAndType = (validObject, receivedObject) => {
const validKeys = Object.keys(validObject);
const receivedKeys = Object.keys(receivedObject);
const lenCheck = (validKeys.length === receivedKeys.length);
const typeCheck = validKeys.every((value)=>{
if(receivedKeys.indexOf(value) != -1 ){
if( typeof(validObject[value]) != typeof(receivedObject[value])){
console.log("data type not same : " + value);
return false;
}
} else {
console.log("key not present : " + value);
return false;
}
return true;
})
return lenCheck && typeCheck;
};
validObject = {"a":"a", "b": 9, "c": "c"};
receivedObject = {"a":"t", "b": 4, "c": "h"};
if(checkObjectKeysAndType(validObject,receivedObject)){
console.log("both objects are same");
} else {
console.log("both object are different");
}