lastIndexOf() 함수란?
TypedArray 객체의 lastIndexOf() 함수는 값을 인자로 받아 해당 타입 배열(typed array) 안에 지정된 요소가 포함되어 있는지 확인합니다. 요소가 존재하면 그 요소가 위치한 인덱스를 반환하며, 동일한 요소가 여러 번 나타나는 경우에는 마지막으로 나타난 인덱스를 반환합니다. 만약 배열에 지정된 요소가 존재하지 않으면 -1을 반환합니다.
이 함수는 indexOf()와 유사하지만, 앞에서부터가 아닌 뒤에서부터 요소를 검색한다는 점이 다릅니다.
문법(Syntax)
lastIndexOf() 함수의 기본 문법은 다음과 같습니다.
typedArray.lastIndexOf(searchElement[, fromIndex])
- searchElement: 배열에서 찾고자 하는 값입니다.
- fromIndex (선택 사항): 검색을 시작할 인덱스입니다. 지정하지 않으면 배열의 끝부터 검색을 시작합니다.
예제(Example)
아래 예제에서는 Int32Array에 여러 개의 중복 값(66)이 포함되어 있으며, lastIndexOf()를 사용해 마지막으로 나타난 위치를 확인합니다.
<html>
<head>
<title>JavaScript TypedArray lastIndexOf Method</title>
</head>
<body>
<script type="text/javascript">
var int32View = new Int32Array([21, 19, 65, 21, 14, 66, 87, 55, 66, 97, 66]);
document.write("타입 배열의 내용: " + int32View);
document.write("<br>");
var contains = int32View.lastIndexOf(66);
document.write("지정된 요소가 위치한 인덱스: " + contains);
</script>
</body>
</html>실행 결과(Output)
타입 배열의 내용: 21,19,65,21,14,66,87,55,66,97,66 지정된 요소가 위치한 인덱스: 10
결과 분석
위 예제에서 값 66은 인덱스 5, 8, 10 세 곳에 존재합니다. indexOf()를 사용했다면 첫 번째 위치인 5가 반환되지만, lastIndexOf()는 뒤에서부터 검색하기 때문에 마지막 위치인 10을 반환합니다.