Array.prototype.keys()
Baseline
Widely available
This feature is well established and works across many devices and browser versions. Itâs been available across browsers since иÑÐ»Ñ 2015 г..
ÐеÑод keys() возвÑаÑÐ°ÐµÑ Ð½Ð¾Ð²Ñй иÑеÑаÑÐ¾Ñ Ð¼Ð°ÑÑива Array Iterator, ÑодеÑжаÑий клÑÑи каждого индекÑа в маÑÑиве.
ÐнÑеÑакÑивнÑй пÑимеÑ
const array1 = ["a", "b", "c"];
const iterator = array1.keys();
for (const key of iterator) {
console.log(key);
}
// Expected output: 0
// Expected output: 1
// Expected output: 2
СинÑакÑиÑ
arr.keys()
ÐÑимеÑÑ
>ÐÑимеÑ: базовое иÑполÑзование
js
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(), не пÑопÑÑÐºÐ°ÐµÑ Ð´ÑÑки в маÑÑиве
js
var arr = ["a", , "c"];
var sparseKeys = Object.keys(arr);
var denseKeys = [...arr.keys()];
console.log(sparseKeys); // [0, 2]
console.log(denseKeys); // [0, 1, 2]
СпеÑиÑикаÑии
| Specification |
|---|
| ECMAScript® 2027 Language Specification> # sec-array.prototype.keys> |