Как проверить существование определённого индекса в массиве?

Есть массив, индексы в котором не от 0 и до ..., а могут быть совершенно любые: 1, 4, 10, 1356, при этом в массиве всего четыре элемента, но вот с такими индексами. Как проверить существует ли в массиве индекс, например, 10?


Ответы (2 шт):

Автор решения: Artem Gabidov
const arr = [1, , 3, 76, , , 34, ];

for(let i in arr) {
  console.log(i + ':' +arr[i]);
}

Может это поможет

→ Ссылка
Автор решения: vsemozhebuty

В таком случае лучше использовать объект или Map, потому что массивы с непоследовательными индексами в JS работают неоптимально и это противоречит их назначению. Но если без этого не обойтись, можно использовать оператор in:

const array = [];

array[10] = 'foo';

console.log(0 in array); // false

console.log(10 in array); // true

→ Ссылка