The keys()
method returns a new Array Iterator
object that contains the keys for each index in the array.
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 }
Syntax
arr.keys()
Return value
A new Array
iterator object.
Examples
Key iterator doesn't ignore holes
var arr = ['a', , 'c']; var sparseKeys = Object.keys(arr); var denseKeys = [...arr.keys()]; console.log(sparseKeys); // ['0', '2'] console.log(denseKeys); // [0, 1, 2]
Specifications
Specification | Status | Comment |
---|---|---|
ECMAScript 2015 (6th Edition, ECMA-262) The definition of 'Array.prototype.keys' in that specification. |
Standard | Initial definition. |
ECMAScript Latest Draft (ECMA-262) The definition of 'Array.prototype.keys' in that specification. |
Living Standard |
Browser compatibility
The compatibility table in this page is generated from structured data. If you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and send us a pull request.
Feature | Chrome | Edge | Firefox | Internet Explorer | Opera | Safari |
---|---|---|---|---|---|---|
Basic support | 38 | Yes | 28 | No | 25 | 8 |
Feature | Android webview | Chrome for Android | Edge mobile | Firefox for Android | IE mobile | Opera Android | iOS Safari |
---|---|---|---|---|---|---|---|
Basic support | Yes | Yes | Yes | 28 | No | Yes | 8 |
See also
Document Tags and Contributors
Tags:
Contributors to this page:
fscholz,
njohnson7,
erikadoyle,
nmve,
kdex,
David_Gilbertson,
eduardoboucas,
qcgm,
ziyunfei,
arai,
Mingun,
realityking,
rvighne,
vladikoff
Last updated by:
fscholz,