Toggle navigation
MeasureThat
.net
Create a benchmark
Tools
Feedback
Feature Requests
FAQ
Register
Log In
array using every vs includes vs some
(version: 0)
Benchmark.js
<script src='https://cdnjs.cloudflare.com/ajax/libs/lodash.js/4.17.5/lodash.min.js'></script>
Comparing performance of:
includes vs every vs some
Created:
4 years ago
by:
Guest
Go to the latest result
HTML Preparation code:
<script src='https://cdnjs.cloudflare.com/ajax/libs/lodash.js/4.17.5/lodash.min.js'></script>
Script Preparation code:
var array = [true,false]
Tests:
includes
!array.includes(true)
every
array.every(v => v===false)
some
!array.some(v => v)
Rendered benchmark preparation results:
Suite status:
<idle, ready to run>
Run tests (3)
Previous results
Fork
Test case name
Result
includes
every
some
Fastest:
N/A
Slowest:
N/A
Latest run results:
Run details:
(Test run date:
one year ago
)
User agent:
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/18.6 Safari/605.1.15 Ddg/18.6
Browser/OS:
Safari 18 on Mac OS X 10.15.7
View result in a separate tab
Embed
Embed Benchmark Result
includes
137.9M/s
some
127.8M/s
every
121.3M/s
View exact numbers
Test name
Executions per second
✓
includes
137,864,352 Ops/sec
some
127,799,312 Ops/sec
every
121,349,328 Ops/sec
Autogenerated LLM Summary
(model
llama3.2:3b
, generated one year ago):
Let's break down the JavaScript microbenchmark provided by MeasureThat.net. **Benchmark Overview** The benchmark compares three different methods to check if an element exists in an array: 1. `every` 2. `includes` 3. `some` These methods are often used to determine whether a certain condition is met for all or some elements in an array. **Options Compared** Here's a brief overview of each method: 1. **`every()`**: This method returns `true` if all elements of the array pass the provided test. In this case, the test checks if all elements are falsy (`v === false`). If any element is truthy, it will return `false`. * Pros: Efficient for arrays with a large number of elements where only one specific value needs to be checked. * Cons: May not be suitable for small arrays or when you need to check individual elements rather than the entire array. 2. **`includes()`**: This method returns `true` if an element is found in the array, and `false` otherwise. * Pros: Simple and intuitive, easy to read and maintain. * Cons: May be slower for very large arrays due to its iteration nature. 3. **`some()`**: This method returns `true` if at least one element passes the provided test. In this case, the test checks if any element is truthy (`v`). If no elements are truthy, it will return `false`. * Pros: Efficient for arrays with a small number of elements where only one specific value needs to be checked. * Cons: May not be suitable for large arrays or when you need to check individual elements rather than the entire array. **Library Used** The benchmark uses Lodash.js, a popular JavaScript library that provides a wide range of functional programming utilities. In this case, it's used for its `includes()` and `some()` functions. **Special JS Features/Syntax** This benchmark does not use any special JavaScript features or syntax beyond the standard ES6 syntax for array methods (`every()`, `includes()`, and `some()`). **Other Alternatives** If you need to check if an element exists in an array, here are some alternative approaches: 1. Manual iteration using a loop. 2. Using `Array.prototype.findIndex()` which returns the index of the first element that satisfies the condition, or -1 if no elements satisfy it. Manual iteration would involve iterating over each element in the array and checking its value, while `Array.prototype.findIndex()` is more concise but may be slower due to its overhead. Keep in mind that these alternatives are not as efficient as using built-in methods like `every()`, `includes()`, or `some()`.
Related benchmarks
IndexOf vs Includes vs lodash includes for string
Array.indexOf vs Array.includes vs lodash includes with numerical values
Comments
Confirm delete:
Do you really want to delete benchmark?