These functions searches the array for the specified object. Returns the index in the array of the first match, or 0 if there is no match.

arrayFind(array, object) → returns numeric

Member Function Syntax


arrayFind Argument Reference

array array

The array you are searching.

object any

The value you are looking for in the array. CF 10+ or Lucee 4.5+ support passing a closure function in this argument as well.



Version 9+ CF10+ Added support for closure instead of object


Lucee4.5+ Added support for closure instead of object

Examples sample code invoking the arrayFind function

Find an "apple" in an array of Fruit

Returns the index of the element "apple" in the array

writeOutput( arrayFind( ["orange","pineapple","apple"], "apple" ));

Expected Result: 3

Member Functions: Find an "apple" in an array of Fruit

Calls the find member function of the array object. Requires CF 11+ or Lucee 4.5+

fruit = [ "orange", "pineapple", "apple" ];
writeOutput( fruit.find( "apple" ) );

Expected Result: 3

arrayFind is Case Sensitive

Case sensitive so "Apple" is not in the array, returns 0. Use arrayFindNoCase for case insensitive matching.

writeOutput( arrayFind(["orange","pineapple","apple"], "Apple") );

Expected Result: 0

Using arrayFind with a closure / callback function

CF 10+ Lucee 4.5+ The arrayFind function passes each array value into the supplied function. The function returns a boolean, true if you found what you are looking for. The result of the arrayFind function is the index of the first matching array element found, or 0 if not found. Use arrayFindAll to return an array of all found item indexes.

a = [5,4,3,2,1];
pos = arrayFind(a, function(item) {
	return item == 2;

Expected Result: 4

Fork me on GitHub