How to check if Javascript array of objects has the same value throughout

Viewed 1009

I have the following array:
distributors = [{ Name: 'Foo', Count: 0}, { Name: 'Bar', Count: 0}, { Name: 'Baz', Count: 0}]

How do I check if the 'Count' is 0 for every object in the array? Ideally, I would like to write a function to return boolean if the value for 'Count' is 0 for every object in the array.

2 Answers

You can use every method. Every method checks if all elements in an array pass a test and returns true or false based on the function you have provided. So, If every element pass the test it returns true otherwise false.

const distributors = [
  { Name: 'Foo', Count: 0 },
  { Name: 'Bar', Count: 0 },
  { Name: 'Baz', Count: 0 },
];

const ret = distributors.every((x) => x.Count === 0);
console.log(ret);

This function returns true if all the Count property is 0

function checkCount(distributors) {
    for (let element of distributors) {
        if (element.Count) {
            return false;
        }
    }

    return true;
}
Related