Computer >> 컴퓨터 >  >> 프로그래밍 >> JavaScript

JavaScript TypedArray indexOf() 함수 완벽 정리 – 사용법과 예제

JavaScript에서 TypedArray 객체의 indexOf() 함수는 인자로 전달받은 값이 타입 배열(typed array) 안에 존재하는지 확인하는 데 사용됩니다. 요소가 발견되면 해당 요소가 위치한 인덱스를 반환하며, 같은 요소가 여러 번 나타나는 경우에는 그중 첫 번째 인덱스를 반환합니다. 만약 배열에 지정된 요소가 존재하지 않으면 -1을 반환합니다.

또한 indexOf() 함수는 선택적으로 두 번째 매개변수인 fromIndex를 받을 수 있습니다. 이 값을 지정하면 해당 인덱스부터 검색을 시작하므로, 배열의 특정 구간만 탐색하고 싶을 때 유용합니다.

문법(Syntax)

typedArray.indexOf(searchElement[, fromIndex])
  • searchElement: 배열에서 찾고자 하는 값입니다.
  • fromIndex (선택 사항): 검색을 시작할 인덱스입니다. 음수를 지정하면 배열 끝에서부터 계산된 위치에서 검색이 시작됩니다.

예제 1: 요소가 존재하는 경우

다음 예제에서는 Int32Array에서 값 66을 검색합니다. 배열에 66이 세 번 등장하지만, indexOf()는 가장 먼저 나타난 인덱스인 5를 반환합니다.

<html>
<head>
    <title>JavaScript TypedArray indexOf 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.indexOf(66);
        document.write("지정한 요소가 위치한 인덱스: " + contains);
    </script>
</body>
</html>

실행 결과

타입 배열의 내용: 21,19,65,21,14,66,87,55,66,97,66
지정한 요소가 위치한 인덱스: 5

예제 2: 요소가 존재하지 않는 경우

이번에는 배열에 존재하지 않는 값 634를 검색해 보겠습니다. 이 경우 indexOf() 함수는 -1을 반환합니다.

<html>
<head>
    <title>JavaScript TypedArray indexOf 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.indexOf(634);
        document.write("지정한 요소가 위치한 인덱스: " + contains);
    </script>
</body>
</html>

실행 결과

타입 배열의 내용: 21,19,65,21,14,66,87,55,66,97,66
지정한 요소가 위치한 인덱스: -1

정리

indexOf() 함수는 타입 배열에서 특정 요소의 위치를 빠르게 찾을 때 유용합니다. 반환값이 -1인지 여부를 확인하면 요소의 존재 여부도 간단하게 판별할 수 있으며, 일반 Array의 indexOf()와 동일한 방식으로 동작한다는 점을 기억해 두면 좋습니다.