Skip to content Skip to sidebar Skip to footer

How To Check If Every Properties In An Object Are Null

I have an object, sometimes it is empty like so {} other times it will have properties that are set to null. { property1: null, property2: null } How can I determine if ALL th

Solution 1:

You can use Object.values to convert the object into array and use every to check each element. Use ! to negate the value.

let report = {
  property1: null,
  property2: null,
}

let result = !Object.values(report).every(o => o === null);

console.log(result);

An example some elements are not null

let report = {
  property1: null,
  property2: 1,
}

let result = !Object.values(report).every(o => o === null);

console.log(result);

Doc: Object.values(), every()

Solution 2:

You can use the Object.keys() method this will return all keys in that Object as an Array. This makes it possible to do Object.keys(this.report.device).filter(key => !this.report.device[key] === null), which will return you the amount of not null keys, if this is 0 then you have your answer.

In essence relying on null properties is not such a good approach it's better to make those properties undefined or just to return a flat Object from your API.

Hope this helped.

Solution 3:

Approach using .some() instead of .every():

functionisEmpty (obj) {
    return !Object.values(obj).some(element => element !== null);
}

This function (named isEmpty to match the name given in the question) shall return false if any obj property is not null and true otherwise.

Solution 4:

This is very simple and can be done with a one liner !

functionIsAllPropertiesNull(obj) {
 returnObject.values(obj).every(v=>v == null);
}

a = {'a': null, 'b':null};
var isAllNull = IsAllPropertiesNull(a) 
// isAllNull = true

explanation - get all values of object - iterate them and check for null

Good luck!

Solution 5:

Use Object.entries and Array.every

let obj = {
   property1: null,
   property2: null,
};

functionisEmpty(o) {
  returnObject.entries(o).every(([k,v]) => v === null);
}

if(isEmpty(obj)) {
   console.log("Object is empty");
} 

Post a Comment for "How To Check If Every Properties In An Object Are Null"