We're looking for a user researcher to understand the needs of developers and designers. Is this you or someone you know? Check out the post: https://mzl.la/2IGzdXS

keys() メソッドは、配列の各インデックスのキーを含む新しい Arrayイテレーター オブジェクトを返します。

構文

arr.keys()

戻り値

新規の Array イテレーターオブジェクト。

基本的な使い方

// 訳注: このサンプルは keys() の本質を解説していますが「基本的な使い方」と言うほど一般的ではないかもしれません。
//     通常は Array.from()for...of と組み合わせて使うことが多いでしょう。

var arr = ["a", "b", "c"];
var iterator = arr.keys();

console.log(iterator.next()); // { value: 0, done: false }
console.log(iterator.next()); // { value: 1, done: false }
console.log(iterator.next()); // { value: 2, done: false }
console.log(iterator.next()); // { value: undefined, done: true }

キーイテレータは抜けを無視しない

var arr = ["a", , "c"];
var sparseKeys = Object.keys(arr);
var denseKeys = [...arr.keys()];
console.log(sparseKeys); // ['0', '2']
console.log(denseKeys);  // [0, 1, 2]

仕様

仕様 状況 コメント
ECMAScript 2015 (6th Edition, ECMA-262)
Array.prototype.keys の定義
標準 Initial definition.
ECMAScript Latest Draft (ECMA-262)
Array.prototype.keys の定義
ドラフト  

ブラウザ実装状況

機能ChromeEdgeFirefoxInternet ExplorerOperaSafari
基本対応38 あり28 なし258
機能Android webviewChrome for AndroidEdge mobileFirefox for AndroidOpera AndroidiOS SafariSamsung Internet
基本対応 あり あり あり28 あり8 あり

関連情報

ドキュメントのタグと貢献者

このページの貢献者: woodmix, Marsf, shide55
最終更新者: woodmix,