• JavaScript Video Tutorials

JavaScript - Array findLastIndex() Method



In JavaScript, the Array.findLastIndex() method is used to iterate over the array elements in reverse order and returns the index of the last element that satisfies the provided function. If no element is satisfying the condition in provided function, it returns '-1' as result.

This method does not execute the function for empty array elements. In addition to that, this method does not modify the original array; instead, it returns the result in a new array.

The findLastIndex() method in an ES2023 feature and it is supported in all modern browsers such as Chrome, Edge, Firefox, Safari, and Opera.

Syntax

Following is the syntax of JavaScript Array.findLastIndex() method −

findLastIndex(callbackFn, thisArg)

Parameters

This method accepts two parameters. The same is described below −

  • callbackFn − A function that is called for each element in the array. This function is called with three arguments:
    • element (optional) − The current element being processed in the array.
    • index (optional) − The index of the current element being processed in the array.
    • array (optional) − The array findLastIndex() was called upon.
  • thisArg (optional) − A value to use as this when executing callback.

Return value

This method returns the index of the last element in the array that satisfies the provided testing function. If no element satisfies the provided function, -1 will be returned.

Examples

Example 1

In the following example, we are finding the last index of an even number in the array using the JavaScript Array.findLastIndex() method −

<html>
<body>
   <script>
      const numbers = [1, 2, 3, 4, 5, 6];
      const lastIndex = numbers.findLastIndex((num) => num % 2 === 0);
      document.write(lastIndex);
   </script>
</body>
</html>

Output

Since '6' is the last even number in the array, it's index number '5' will be returned as a result.

5

Example 2

In this example, we are finding the last index of a string that starts with a specific letter ('a') −

<html>
<body>
   <script>
      const words = ['apple', 'banana', 'avocado', 'orange', 'grape'];
      const lastIndex = words.findLastIndex((word) => word.startsWith('a'));
      document.write(lastIndex);
   </script>
</body>
</html>

Output

The above program returns index '2' as a result beacuse 'avocado' is the last word that satisfies the condition.

2

Example 3

Here, we are finding the last index of an element greater than 10 −

<html>
<body>
   <script>
      const numbers = [5, 8, 12, 15, 20];
      const lastIndex = numbers.findLastIndex((num) => num > 10);
      document.write(lastIndex);
   </script>
</body>
</html>

Output

It returns index '4' as result beacuse the last number in the array that is greater than 10 is '20'.

4

Example 4

In the below example, we are finding the last index of an 'even' number −

<html>
<body>
   <script>
      const numbers = [1, 3, 5, 7, 9];
      const lastIndex = numbers.findLastIndex((num) => num % 2 === 0);
      document.write(lastIndex);
   </script>
</body>
</html>

Output

It returns '−1' as result because, no element in the array satisfies the function.

-1
Advertisements