## DEV Community

Christian Falucho

Posted on

# Day 11 of #100DaysOfCode!

## Today's progress

I learned about `every()` and `some()` methods.

## What I learned

#### every() method

The `every()` method tests whether every element in the array passes the test implemented by the provided function and returns a `Boolean value`.

``````let numbers = [1, 2, 3, 4, 5]

const greaterThanZero = numbers.every(function(number){
return number > 0;
})

console.log(greaterThanZero)
//output: true
``````

The above code example checks whether `every` element in the array is greater than zero (number > 0). If so, it returns the boolean value `true`.

#### some() method

The `some()` method tests whether at least one element in the array passes the test implemented by the provided function and returns `true`. Otherwise it returns `false`. The original array is not modified.

``````let numbers = [100, 0, 2, 4, 10]

const isAnElementNegative = numbers.some(function(number){
return number < 0;
})

console.log(isAnElementNegative)
//output: false
``````

The above code example outputs false because no element in the array is less than zero.

However, if we have an array with at least one negative element.

``````let numbers = [-5, 0, 2, 4, 10]

const isAnElementNegative = numbers.some(function(number){
return number < 0;
})

console.log(isAnElementNegative)
//output: true
``````

Then the output will return true because at least one element is negative.

## Filling in the gaps

Both `every()` and `some()` methods uses a `callback function` on every element and returns a boolean value `true` or `false`.

The complete syntax for both methods is as follows:
`every()`

``````every(function(element, index, array))
``````

`some()`

``````some(function(element, index, array))
``````

For both methods the parameters `index` and `array` are optional.

## Simply put

Both `every()` and `some()` methods are great tools when you want to derive a single boolean value from an array of elements.

Because they are standard JavaScript methods they can be much simple to read and use as compared to a `forEach()` or `reduce()` methods.

In other words, when solving a problem with arrays. Be sure to consider these tools in your toolkit as they can be powerful to help you find a solution.