Почему добавляется __PROTO__, как создать чистый массив без __PROTO__?

Почему добавляется __PROTO__, как создать чистый массив без __PROTO__?

Массив генерируется примерно таким методом:

let obj = [];
for(let i = 0; i < 5; i++){
  obj[i] = {'test': i};
}
console.log(obj);

При использовании потом $.each(obj, function(i, item){ ... }); идет бесконечный цикл

введите сюда описание изображения


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

Автор решения: Vasily

Пустой массив:

const obj = []

является представителем класса Array, исходя из чего он имеет прототип благодаря прототипному наследованию в JavaScript.

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

__proto__ это устаревшее свойство для получения прототипа объекта, расположено оно в Object.prototype так как Array является наследником Object создать массив без этого свойства - невозможно.

→ Ссылка