JavaScriptのarray.keys()メソッドとは?使い方とサンプルコードを解説
JavaScriptのarray.keys()メソッドは、配列の各要素のキー(インデックス番号)のみを格納した配列イテレータオブジェクトを生成するメソッドです。返されたイテレータをfor...ofループなどで反復処理すると、「0」「1」「2」といったインデックスを順番に取り出すことができます。
基本構文
arr.keys()
このメソッドは引数を受け取らず、元の配列を変更しない(非破壊的な)ため、安全に利用できます。
サンプルコード
以下は、array.keys()メソッドを使用した具体的なコード例です。「CLICK HERE」ボタンをクリックすると、配列のキーが画面に表示されます。
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>Document</title>
<style>
body {
font-family: "Segoe UI", Tahoma, Geneva, Verdana, sans-serif;
}
.sample {
font-size: 20px;
font-weight: 500;
}
</style>
</head>
<body>
<h1>JavaScript array keys()</h1>
<div class="sample"></div>
<button class="Btn">CLICK HERE</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>
実行結果
ページを開いた直後は、元の配列「H、E、L、L、O」がそのまま表示されます。

「CLICK HERE」ボタンをクリックすると、keys()で取得したイテレータがfor...ofループによって反復処理され、各要素のインデックスである「0」「1」「2」「3」「4」が1行ずつ表示されます。

関連するメソッド
- values(): 配列の値そのものを順に返すイテレータを生成します。
- entries(): キーと値のペア[インデックス, 値]を順に返すイテレータを生成します。
keys()はあくまでインデックスを扱うメソッドですが、values()やentries()と併用することで、配列の反復処理をより柔軟に記述できます。用途に応じて使い分けると良いでしょう。
-
JavaScriptのArray.prototype.includes()メソッドとは?配列内に特定の要素が含まれるか判定する方法
Array.prototype.includes()メソッドとは JavaScriptのArray.prototype.includes()メソッドは、配列の中に特定の要素が含まれているかどうかを判定するためのメソッドです。要素が見つかった場合はtrue、見つからなかった場合はfalseを返します。 基本構文 arr.includes(searchElement[, fromIndex]) searchElement:検索対象となる要素を指定します。 fromIndex(省略可能):検索を開始するインデックス位置です。省略した場合は先頭(0)から検索されます。 サンプルコード 以下は、in
-
JavaScriptのObject.keys().map()とArray.map()の違いを徹底解説
JavaScriptにおいて、Array.map()は配列の各要素に関数を適用し、その結果を新しい配列として返すメソッドです。一方、オブジェクトには直接map()メソッドが用意されていないため、Object.keys().map()という形で、まずObject.keys()を使ってオブジェクトのキーを配列として取得し、そこにmap()を適用するのが一般的なテクニックとなります。 この記事では、両者の使い方の違いを、実際に動作するサンプルコードと実行結果をもとにわかりやすく解説します。 サンプルコード 以下は、Object.keys().map()とArray.map()の動作を比較できるJa