back to Overview


Finds a specific value in the list.
Available in all modules.

Syntax Variants

list.find(findFunc, startIndex)
list.find(element, startIndex)
_.find(list, findFunc)
_.find(list, element)
_.find(list, findFunc, startIndex)
_.find(list, element, startIndex)


A list to use as input. Can be an array, a Minified list or any other array-like structure with length property.
The callback function(item, index) that will be invoked for every list item until it returns a non-null value:
The current list element.
The second the zero-based index of the current element.
This list.
(callback return value)
If the callback returns something other than null or undefined, find() will return it directly. Otherwise it will continue.
the element to search for
startIndex (optional)
the 0-based index of the first element to search.
(return value)
if called with an element, either the element's index in the list or undefined if not found. If called with a callback function, it returns either the value returned by the callback or undefined.


Finds a specific value in the list. There are two ways of calling find():

  1. With a value as argument. Then find() will search for the first occurrence of an identical value in the list, using the '===' operator for comparisons, and return the index. If it is not found, find() returns undefined.
  2. With a callback function. find() will then call the given function for each list element until the function returns a value that is not null or undefined. This value will be returned.

find() can also be used as an alternative to each() if you need to abort the loop.


Finds the first negative number in the list:

var i = _(1, 2, -4, 5, 2, -1).find(function(value, index) { if (value < 0) return index; }); // returns 2


Finds the index of the first 5 in the array:

var i = _.find([3, 6, 7, 6, 5, 4, 5], 5); // returns 4 (index of first 5)


Determines the position of the element with the id '#wanted' among all li elements:

var elementIndex = $('li').find($$('#wanted'));


Goes through the elements to find the first div that has the class 'myClass', and returns this element:

var myClassElement = $('div').find(function(e) { if ($(e).is('.myClass')) return e; });

See also..

  • findLast() is the equivalent to find() for the list's end.


comments powered by Disqus

back to Overview