Показать сообщение отдельно
  #11 (permalink)  
Старый 24.09.2017, 22:12
Интересующийся
Отправить личное сообщение для evgeniyfill82 Посмотреть профиль Найти все сообщения от evgeniyfill82
 
Регистрация: 26.09.2016
Сообщений: 13

рони, оживлю немного тему, чтобы зря не плодить. Только вопрос уже немного в другом.
Как удалить объект из массива, и надо ли это?
arr = [];
arr.push({ ... });
arr.push({ ... });
arr.push({ ... });
console.log(arr.length); // 3
for(var k in arr) {
 if (...) delete arr[k];
}
console.log(arr.length); // 3

То есть, если удалить объект из массива, длина массива не изменится. Считает ли цикл каждые, даже не существующие уже значения? Повлияет ли это на производительность, если массивы будут безмерно долго расти, при том, что не удаленными в них будет оставаться примерно одно и тоже количество объектов. (если это еще и будет делаться каждые 50 мс).
console.log(arr.length); // 300000
var i = 0;
for(var k in arr) {
 i++;
}
console.log(i) // 1000
Ответить с цитированием