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

JavaScript 배열 keys() 메서드 – 사용법과 예제 코드 총정리

JavaScript의 array.keys() 메서드는 배열의 키(인덱스)만을 담고 있는 배열 반복자(Array Iterator) 객체를 생성합니다. 이 메서드는 배열 자체의 값을 반환하는 것이 아니라, 각 요소의 인덱스 번호를 순회할 수 있는 반복자를 반환한다는 점이 특징입니다.

array.keys() 메서드의 기본 개념

keys() 메서드는 별도의 매개변수를 받지 않으며, 호출 즉시 반복자 객체를 반환합니다. 이 반복자는 for...of 문이나 전개 연산자(...)와 함께 사용하여 배열의 모든 인덱스를 손쉽게 순회할 수 있습니다.

예제 코드

다음은 array.keys() 메서드의 실제 동작을 확인할 수 있는 전체 코드입니다.

<!DOCTYPE html>
<html lang="ko">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>JavaScript 배열 keys()</title>
<style>
    body {
        font-family: "Segoe UI", Tahoma, Geneva, Verdana, sans-serif;
    }
    .sample {
        font-size: 20px;
        font-weight: 500;
    }
</style>
</head>
<body>
<h1>JavaScript 배열 keys()</h1>
<div class="sample"></div>
<button class="Btn">클릭하세요</button>
<h3>
위 버튼을 클릭하면 배열의 키(인덱스)를 확인할 수 있습니다
</h3>
<script>
    let fillEle = document.querySelector(".sample");
    let arr = ["H", "E", "L", "L", "O"];
    fillEle.innerHTML = arr;
    arr = arr.keys();
    document.querySelector(".Btn").addEventListener("click", () => {
        fillEle.innerHTML = "";
        for (let x of arr) {
            fillEle.innerHTML += x + "<br>";
        }
    });
</script>
</body>
</html>

코드 설명

위 예제의 핵심 로직을 단계별로 살펴보면 다음과 같습니다.

1. 배열 생성 및 화면 출력 – 문자열 요소 5개를 가진 배열 ["H", "E", "L", "L", "O"]를 만들고, 초기 상태 그대로 화면에 표시합니다.

2. 반복자 변환arr.keys()를 호출하여 배열을 키(인덱스)만 담은 반복자 객체로 변환합니다.

3. 버튼 클릭 시 순회 – 버튼을 클릭하면 for...of 루프가 반복자를 순회하며 각 인덱스 값(0, 1, 2, 3, 4)을 한 줄씩 화면에 출력합니다.

실행 결과

페이지를 처음 열면 원본 배열의 내용이 표시됩니다.

JavaScript 배열 keys() 메서드 – 사용법과 예제 코드 총정리

「클릭하세요」 버튼을 누르면 다음과 같이 배열의 키인 인덱스 번호만 출력됩니다.

JavaScript 배열 keys() 메서드 – 사용법과 예제 코드 총정리

참고 사항

keys()와 유사한 메서드로는 배열의 을 순회하는 values(), 그리고 키-값 쌍을 함께 순회하는 entries()가 있습니다. 세 메서드 모두 ES6에서 도입되었으며, 최신 브라우저에서 폭넓게 지원됩니다. 희소 배열(sparse array)의 경우 빈 슬롯의 인덱스도 포함하여 순회한다는 점도 기억해 두면 유용합니다.