See MDN:

The some() method executes the callbackFn function once for each element present in the array until it finds the one where callbackFn returns a truthy value (a value that becomes true when converted to a Boolean). If such an element is found, some() immediately returns true. Otherwise, some() returns false. callbackFn is invoked only for indexes of the array with assigned values. It is not invoked for indexes which have been deleted or which have never been assigned values.

You can see that here:

const arr = ['item 1', 'item 2', , 'item 3', , 'item 4', 'item 5'];
console.log(arr.some((item, index) => {
  console.log(item, index);
  return !item
})); 
Run code snippetEdit code snippet Hide Results Copy to answer Expand


If I will explicitly replace the empty elements with undefined, then it will return true.

That's the difference between "never assigned a value" and "been assigned the undefined value".

๐ŸŒ
MDN Web Docs
developer.mozilla.org โ€บ en-US โ€บ docs โ€บ Web โ€บ JavaScript โ€บ Reference โ€บ Global_Objects โ€บ Array โ€บ some
Array.prototype.some() - JavaScript | MDN
1 week ago - The some() method of Array instances returns true if it finds an element in the array that satisfies the provided testing function. Otherwise, it returns false.
๐ŸŒ
W3Schools
w3schools.com โ€บ jsref โ€บ jsref_some.asp
W3Schools.com
The some() method returns true (and stops) if the function returns true for one of the array elements.
๐ŸŒ
GeeksforGeeks
geeksforgeeks.org โ€บ javascript โ€บ javascript-array-some-method
JavaScript Array some() Method - GeeksforGeeks
July 12, 2024 - The some() method checks if any array elements pass a test provided as a callback function, returning true if any do and false if none do.
๐ŸŒ
Reddit
reddit.com โ€บ r/learnjavascript โ€บ what is the correct situation to use array.find() vs. array.includes vs. array.some() ?
What is the correct situation to use array.find() vs. ...
September 14, 2019 -

I understand how each of these methods work, but they all seem to have similar functions to one another, and I'm not sure as to what situation might call for what method.

Find elsewhere
๐ŸŒ
freeCodeCamp
freecodecamp.org โ€บ news โ€บ learn-the-every-and-some-array-methods-in-javascript
JavaScript Array Methods โ€“ How to Use every() and some() in JS
August 10, 2022 - In JavaScript, every and some help you test if something is true for every element or some elements of an array. In this article, I'll show you how to use these helpful array methods. Table of Contents1How every() and some() Work โ€“ an Overview2Param...
๐ŸŒ
Refine
refine.dev โ€บ home โ€บ blog โ€บ tutorials โ€บ how to use javascript array some
How to Use JavaScript Array some | Refine
November 4, 2024 - The JavaScript Array.prototype.some method is an iteration method that tests whether any one element in a collection satisfies a given condition. It is commonly used to find items that fulfill involved conditions such as matching the value of ...
๐ŸŒ
4Geeks
4geeks.com โ€บ how-to โ€บ javascript-array-some-method
How to use the Javascript array some method?
July 16, 2025 - Nowadays known as one of the most familiar Arrays methods to test in Javascript we have the Array Some method. What some() method performs is testing whether at least one element of the array matches the test executed by our custom function.
๐ŸŒ
LinkedIn
linkedin.com โ€บ pulse โ€บ understanding-distinction-arraysome-vs-arrayfind-shuaibu-muhammad-20j9f
Understanding the Distinction: Array.some() vs. Array.find() ...
February 26, 2024 - Array.some() for Boolean Results: ... Array.some() is your go-to method. It returns a boolean value indicating whether any element passes the test provided by the callback function....
๐ŸŒ
GeeksforGeeks
geeksforgeeks.org โ€บ typescript โ€บ typescript-array-some-method
TypeScript Array some() Method - GeeksforGeeks
July 12, 2024 - The Array.some() method in TypeScript is used to check if at least one element in the array passes the test implemented by the provided function.
๐ŸŒ
Lucee Documentation
docs.lucee.org โ€บ reference โ€บ functions โ€บ arraysome()
array.some() :: Lucee Documentation
This function calls a given closure/function with every element in a given array and returns true, if one of the closure calls returns true. array.some( closure=function, parallel=boolean, maxThreads=number )
๐ŸŒ
TypeScript
typescriptlang.org โ€บ docs โ€บ handbook โ€บ 2 โ€บ everyday-types.html
TypeScript: Documentation - Everyday Types
The type names String, Number, and Boolean (starting with capital letters) are legal, but refer to some special built-in types that will very rarely appear in your code. Always use string, number, or boolean for types. To specify the type of an array like [1, 2, 3], you can use the syntax number[]; ...
๐ŸŒ
Marius Schulz
mariusschulz.com โ€บ blog โ€บ the-some-and-every-array-methods-in-javascript
The some() and every() Array Methods in JavaScript โ€” Marius Schulz
November 22, 2020 - As soon as every() finds an array element that doesn't match the predicate, it immediately returns false and doesn't iterate over the remaining elements. The predicate function is passed three arguments by both some() and every(): the current array element to test, the index in the array, and the array itself.
๐ŸŒ
Generalist Programmer
generalistprogrammer.com โ€บ home โ€บ glossary โ€บ array.some(): explained [2025]
What is Array.some(): Explained [2025]? Definition & Meaning
November 16, 2025 - The Array.some() method tests whether at least one element in an array passes a provided test function, returning true or false as appropriate. This powerful JavaScript array method executes a callback function once for each element in the array until it finds one where the callback returns ...
๐ŸŒ
Lodash
lodash.com โ€บ docs
Lodash Documentation
Creates an array of values by running each element in collection thru iteratee. The iteratee is invoked with three arguments: (value, index|key, collection). Many lodash methods are guarded to work as iteratees for methods like _.every, _.filter, _.map, _.mapValues, _.reject, and _.some.
๐ŸŒ
JavaScript.info
javascript.info โ€บ tutorial โ€บ the javascript language โ€บ data types
Array methods
The function fn is called on each element of the array similar to map. If any/all results are true, returns true, otherwise false. These methods behave sort of like || and && operators: if fn returns a truthy value, arr.some() immediately returns true and stops iterating over the rest of items; if fn returns a falsy value, arr.every() immediately returns false and stops iterating over the rest of items as well.
๐ŸŒ
Edgecompute
js-compute-reference-docs.edgecompute.app โ€บ array() โ€บ array.prototype.some()
Array.prototype.some() | @fastly/js-compute
The some() method tests whether at least one element in the array passes the test implemented by the provided function. It returns true if, in the array, it finds an element for which the provided function returns true; otherwise it returns false.
๐ŸŒ
LeetCode
leetcode.com โ€บ problems โ€บ next-greater-element-i
Next Greater Element I - LeetCode
Can you solve this real interview question? Next Greater Element I - The next greater element of some element x in an array is the first greater element that is to the right of x in the same array. You are given two distinct 0-indexed integer arrays nums1 and nums2, where nums1 is a subset of nums2.