back to Overview

.findLast()

Finds the last occurrence of value in the list.
Available in all modules.

Syntax Variants

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

Parameters

list
A list to use as input. Can be an array, a Minified list or any other array-like structure with length property.
findFunc
The callback function(item, index) that will be invoked for every list item until it returns a non-null value:
item
The current list element.
index
The second the zero-based index of the current element.
this
This list.
(callback return value)
If the callback returns something other than null or undefined, find() will return it directly. Otherwise it will continue.
element
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.

Description

Finds the last occurrence of value in the list. There are two ways of calling findLast():

  1. With a value as argument. Then findLast() 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, findLast() returns undefined.
  2. With a callback function. findLast() 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.

Example

Finds the first negative number in the list:

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

Example

Finds the index of the last 5 in the array:

var i = _.findLast([3, 6, 7, 6, 5, 4, 5], 5); // returns 6

Example

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

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

Example

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

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

See also..

  • find() is the equivalent to find values at the end of a list.

Comments

comments powered by Disqus

back to Overview

Functions