Ben_S
Ben_S

Reputation: 113

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

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.

Upvotes: 4

Views: 4243

Answers (2)

Simon
Simon

Reputation: 379

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;
}

Upvotes: 0

phi-rakib
phi-rakib

Reputation: 3302

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);

Upvotes: 6

Related Questions