--- title: Array.prototype.keys() slug: Web/JavaScript/Reference/Global_Objects/Array/keys tags: - Array - ECMAScript6 - Experimental - Expérimental(2) - Iterator - JavaScript - Method - Prototype - Reference - Référence(2) translation_of: Web/JavaScript/Reference/Global_Objects/Array/keys ---
Метод keys()
возвращает новый итератор массива Array Iterator
, содержащий ключи каждого индекса в массиве.
Источник этого интерактивного примера хранится в репозитории GitHub. Если вы хотите внести свой вклад в проект интерактивных примеров, скопируйте https://github.com/mdn/interactive-examples и отправьте нам запрос на перенос.
arr.keys()
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 }
keys()
, не пропускает дырки в массивеvar arr = ['a', , 'c']; var sparseKeys = Object.keys(arr); var denseKeys = [...arr.keys()]; console.log(sparseKeys); // [0, 2] console.log(denseKeys); // [0, 1, 2]
Спецификация | Статус | Комментарии |
---|---|---|
{{SpecName('ES2015', '#sec-array.prototype.keys', 'Array.prototype.keys')}} | {{Spec2('ES2015')}} | Изначальное определение. |
{{SpecName('ESDraft', '#sec-array.prototype.keys', 'Array.prototype.keys')}} | {{Spec2('ESDraft')}} |
{{Compat("javascript.builtins.Array.keys")}}