• JavaScript Video Tutorials

JavaScript - TypedArray findLast() Method



The JavaScript TypedArray findLast() method allows you to search the elements of a typed array in reverse order, which means that the last element of the typed array will be considered as first element and vice versa. The method returns the value of the first element (from last) that satisfies the provided testing function. If none of the elements of the typed array satisfy the testing function, the method will return 'undefined'.

Here are some additional points you should know about the 'findLast()' method −

  • The findLast() method operates on a TypedArray (such as Uint8Array, Int16Array, etc.).

  • It accepts a testing function as a parameter.

  • The testing function is executed for each element in the TypedArray.

  • If an element satisfies the condition specified by the testing function (it returns a true value).

  • If no element satisfies the testing function an undefined is returned.

Syntax

Following is the syntax of JavaScript TypedArray findLast() method −

findLast(callbackFn, thisArg)

Parameters

This method accepts two parameters named 'callbackFn' and 'thisArg', which are described below −

callbackFn − This parameter is a testing function that will be executed for each element in the TypedArray.

This function takes three parameters named 'element', 'index', and 'array'. Here's the description for each parameter −

  • element − Represents the current element being processed in the TypedArray.

  • index − Indicates the index (position) of the current element within the TypedArray.

  • array − Refers to the entire TypedArray.

thisArg (optional) − This is an optional parameter that allows you to specify the value of this within the callbackFn.

Return value

This method returns the last element that satisfies the testing function. If no element satisfies the testing function, 'undefined' is returned.

Examples

Example 1

If the element satisfies the testing function, it will return the value of the last element in the typed array.

In the following example, we are using the JavaScript TypedArray findLast() method to retrieve the last element that satisfied the providing testing function. We create a testing function named isEven() checks for even numbers, and passes it as an argument to this method.

<html>
<head>
   <title>JavaScript TypedArray findLast() Method</title>
</head>
<body>
   <script>
      function isEven(element, index, array){
         return element %2 == 0;
      }
      const T_array = new Uint8Array([1, 2, 3, 4, 5, 6, 7, 8, 9]);
      document.write("Typed array: ", T_array);
      
      //calling function
      document.write("<br>The last even number in typed array: ", T_array.findLast(isEven));
   </script>
</body>
</html>

Output

The above program returns the last even number as 8.

Typed array: 1,2,3,4,5,6,7,8,9
The last even number in typed array: 8

Example 2

Find the last leap year in TypedArray.

In the given example below, we create a function named isLeapYear() that checks for leap year in this typed array [2001, 2004, 2005, 2006, 2009, 2012, 2015], and we pass this function as an argument to findLast() method to retrieve the last leap year that satisfies the testing function.

<html>
<head>
   <title>JavaScript TypedArray findLast() Method</title>
</head>
<body>
   <script>
      function isLeapYear(element, index, arrar){
         return ((element % 4 == 0) && (element % 400 == 0 || element % 100 !=0));
      }
      const T_array = new Int16Array([2001, 2004, 2005,  2006, 2009, 2012, 2015]);
      document.write("Typed array: ", T_array);
      
      //calling function
      document.write("<br>The last leap year in typed array is: ", T_array.findLast(isLeapYear));
   </script>
</body>
</html>

Output

Once the above program is executed, it will return the last leap year in typed array as −

Typed array: 2001,2004,2005,2006,2009,2012,2015
The last leap year in typed array is: 2012

Example 3

If no element satisfies the testing function, the findLast() method will return 'undefined'.

The following is another example of the JavaScript TypedArray findLast() method. We create a function named isNegative() that checks for the negative numbers, and passes it as an argument to this method to retrieve the last element that satisfies the testing function.

<html>
<head>
   <title>JavaScript TypedArray findLast() Method</title>
</head>
<body>
   <script>
      function isNegative(element, index, array){
         return element < 0;
      }
      const T_array = new Uint8Array([1, 10, 5, 6, 7, 8, 9, 10]);
      document.write("Typed array: ", T_array);
      
      // calling function
      document.write("<br>The last negative element: ", T_array.findLast(isNegative));
   </script>
</body>
</html>

Output

After executing the above program, it will return 'undefined'.

Typed array: 1,10,5,6,7,8,9,10
The last negative element: undefined
Advertisements