JavaScript some() method

Did you ever need to know if one of the elements in an array passed a test?

This is where the some() method comes in handy.

Let's keep using our product array, but let's add a discounted product.

We then want to test if some of our products are discounted.

Using the Javascript some() method

Let's start by creating an array of items.

const items = [
  { name: 'T-shirt plain', price: 9, discount: true },
  { name: 'T-shirt print', price: 20 },
  { name: 'Jeans', price: 30 },
  { name: 'Cap', price: 5 }
];

Now let's use the some() method to test if we have a discounted product in our array.

const discounted = items.some(item => {
  return item.discount;
});

// Returns true

If we now remove the discount on our item, it will return false.

Another use case might be that you need to check if all people are under a certain age.

const users = [
  { name: 'Bob', age: 60 },
  { name: 'Sarah', age: 20 },
  { name: 'Billy', age: 18 },
];

const ageRestriction = users.some(user => {
  return user.age <= 18;
});

// Returns true

This return true, because billy is under the age of 18!

The syntax for some is as follows:

const new = original.some(function(value));

Inside our function, we can check on certain properties the value has.

Thank you for reading, and let's connect!

Thank you for reading my blog. Feel free to subscribe to my email newsletter and connect on Facebook or Twitter

Dany Tulumidis's photo

thank you for this series! JS Array methods are awesome and probably my most used integrated methods from JS :D

Chris Bongers's photo

They are sooo cool, learning so much every day about just how powerful they are!

Daniel Augusto De Abreu Mascena's photo

Thanks for sharing but your last example returns an incorrect result:

users[2/*Billy*/].age < 18
// returns false
Chris Bongers's photo

Ah yes, you were paying attention! You are right, should have been <= ! Updating the post now