indexOf method
The indexOf method searches for
an element in an array. In the first
parameter, specify the element text. The method
returns the number of the first found
element, or -1 if there is no
such element. The second optional
parameter of the method specifies
the position from which to start
searching.
Syntax
javascriptarray.indexOf(element, [where to start]);
Example
Let's find the position of the first three in the array:
javascriptlet arr = [1, 2, 3, 3, 3, 4, 5];
let res = arr.indexOf(3);
console.log(res);
The code execution result:
javascript2
Example
Let now the element being checked is not in the array:
javascriptlet arr = [1, 2, 3, 4, 5];
let res = arr.indexOf(6);
console.log(res);
The code execution result:
javascript-1
Example
Let's start the search from a given position:
javascriptlet arr = [1, 2, 3, 4, 5, 3];
let res = arr.indexOf(3, 4);
console.log(res);
The code execution result:
javascript5
Frequent mistake
Sometimes the method is used to check if an element is in an array. In this case, it is easy to make a mistake if you check as follows:
javascriptif (arr.indexOf(3)) {
console.log(true);
} else {
console.log(false);
}
Such a check will work for all
positions, except for zero - after
all, it is interpreted as false.
Properly check for the presence of an element as follows:
javascriptif (arr.indexOf(3) !== -1) {
console.log(true);
} else {
console.log(false);
}
See also
-
the
includesmethod
that checks for the presence of an element in an array -
the
lastIndexOfmethod
that searches for elements from the end -
the
atmethod
that returns an array element by its index -
the
matchmethod
that searches for matches in a string -
the
searchmethod
that performs search